Welcome to the Filecoin Starter Kits repository! This project provides developers with a comprehensive set of tools and examples to build on the Filecoin network. Whether you're new to Filecoin or an experienced developer, you'll find resources here to jumpstart your project.
- Overview
- Prerequisites
- Starter Kits
- Documentation
- Quick Start Guide
- Updating Dependencies
- Repository Structure
- Getting Test Tokens
- Contributing
- Support
This repository contains multiple starter kits, each designed to showcase different aspects of Filecoin development. From smart contract development to storage deal management, these kits cover a wide range of Filecoin functionalities.
Before using any of the starter kits, ensure you have the following installed:
Depending on the specific starter kit, you may also need:
Please refer to each starter kit's individual README.md for specific requirements.
Each starter kit is maintained as a separate repository within the src
directory of this project. Here are the included kits:
-
FEVM Hardhat Kit: A starter kit for building smart contracts on Filecoin using Hardhat.
- Source: fevm-hardhat-kit
- Local path:
src/fevm-hardhat-kit
-
FEVM Foundry Kit: A starter kit for building and testing smart contracts on Filecoin using Foundry.
- Source: fevm-foundry-kit
- Local path:
src/fevm-foundry-kit
-
FVM Starter Kit (Deal Making): A kit focused on creating and managing storage deals on Filecoin.
- Source: fvm-starter-kit-deal-making
- Local path:
src/fvm-starter-kit-deal-making
-
RaaS Starter Kit: A starter kit for working with Filecoin's Retrieval as a Service (RaaS).
- Source: raas-starter-kit
- Local path:
src/raas-starter-kit
-
State Storage Starter Kit: A kit for understanding and interacting with Filecoin's state storage.
- Source: state-storage-starter-kit
- Local path:
src/state-storage-starter-kit
Comprehensive documentation for this project can be found in the docs directory:
- Visit the Filecoin Developer Console.
- Explore the available starter kits in the Dashboard section.
- Select a kit that fits your project needs.
- Follow the interactive setup guide provided on the console.
If you prefer to set up the starter kit locally, follow these steps:
-
Clone this repository:
git clone https://github.com/filecoin-project/filecoin-starter-kits.git cd filecoin-starter-kits
-
Initialize and update the submodules:
git submodule update --init --recursive
-
Choose a starter kit and navigate to its directory:
cd src/<starter-kit-name>
-
Follow the specific setup instructions in the starter kit's README.md file.
To keep all starter kits up-to-date, we've provided a script to update dependencies across all projects:
-
Ensure you're in the root directory of the repository.
-
Run the update script:
./scripts/update-dependencies.sh
This script will go through each starter kit in the src
directory and update its dependencies.
Note: After updating dependencies, make sure to test each starter kit to ensure compatibility.
main
branch: Contains all docs and shared resources.src/
: Contains each starter kit as a separate repository.
To test your smart contracts and applications on the Calibration testnet, you'll need test tokens. Here's how to get them:
-
Set up MetaMask for the Calibration testnet. MetaMask uses the t4 address type, which is compatible with Solidity contracts. If you haven't set up MetaMask yet, follow the MetaMask setup guide.
-
Open MetaMask in your browser and copy your address.
-
Go to the Calibration testnet faucet.
-
Click "Send Funds", paste your address into the address field, and click "Send funds" again.
-
The faucet will provide you with a transaction ID. You can use this ID in a block explorer to track the progress of your transaction.
For more detailed information about getting test tokens, including how to get tokens on a local testnet, please refer to the official Filecoin documentation.
We welcome contributions to improve the starter kits or add new ones! Please see our CONTRIBUTING.md file for guidelines.
If you need help or have questions:
- Open an issue in this repository
- Join our Discord community
- Visit the Filecoin documentation
Happy building with Filecoin!