# Implimenting interfaces and libraries in a contract

**URL:** https://community.starknet.io/t/implimenting-interfaces-and-libraries-in-a-contract/114268
**Category:** Support
**Created:** [June 30, 2024, 11:34am UTC](https://community.starknet.io/t/implimenting-interfaces-and-libraries-in-a-contract/114268 "2024-06-30T11:34:52Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Sari2003](https://dub1.discourse-cdn.com/flex005/user_avatar/community.starknet.io/sari2003/32/85118_2.png) [@Sari2003](https://community.starknet.io/u/Sari2003)
#### Post date: [June 30, 2024, 11:34am UTC](https://community.starknet.io/t/implimenting-interfaces-and-libraries-in-a-contract/114268/1 "2024-06-30T11:34:52Z")

</div>

I have interfaces and libraries in different files and folders,  
I want to use them in a contract in my project,  
how can I use it ? how do I import them to my contract file?

---

<div class="post-metadata">

### Author: ![julio4](https://dub1.discourse-cdn.com/flex005/user_avatar/community.starknet.io/julio4/32/79381_2.png) [@julio4](https://community.starknet.io/u/julio4)
#### Post date: [July 1, 2024, 2:59am UTC](https://community.starknet.io/t/implimenting-interfaces-and-libraries-in-a-contract/114268/2 "2024-07-01T02:59:17Z")

</div>

You can use interfaces and libraries from other modules and crates as long as the modules are publicly accessible (`pub`), and you can shorten the paths with `use`. See [Cairo book Ch7](https://book.cairo-lang.org/ch07-00-managing-cairo-projects-with-packages-crates-and-modules.html).

For external dependencies, check the [Scarb Documentation](https://docs.swmansion.com/scarb/docs/guides/dependencies.html).
