StarknetID provides a robust interface for managing and querying StarkNet identities, making it easier to integrate identity services into applications built on StarkNet.
- Identity resolution and management
- Domain name services
- Secure API endpoints
- Docker containerization support
- Rust-powered performance
Before you begin, ensure you have the following installed:
- Rust (latest stable version) Rust Installation Guide
- Docker and Docker Compose Docker Installation Guide
- Git Git Installation Guide
-
Fork the repo
-
Clone the forked repository:
git clone git clone https://github.com/<your-user>/api.starknet.id.git
cd api.starknet.id
- Create Branch
git checkout -b fix-[issue-number]
- Build the project:
cargo build
- Set up environment variables:
- Copy the template configuration file:
cp config.template.toml config.toml
- Update the configuration with your specific settings
- Build and start the containers:
docker-compose up -d
- Run in development mode:
cargo run
- Run in production mode:
cargo run --release
The API can be configured using the config.toml
file. Key configuration options include:
- Server settings
- Database connections
- StarkNet node configuration
- Logging preferences
-
Docker Build Fails
- Ensure Docker is running
- Check if required ports are available
- Verify Docker has sufficient resources
-
API Connection Issues
- Verify the configuration in config.toml
- Check if the StarkNet node is accessible
- Ensure all required environment variables are set
-
Compilation Errors
- Update Rust to the latest stable version
- Clear cargo cache and rebuild
- Check for missing dependencies
We welcome contributions to the StarknetID API! To keep our workflow smooth, please follow these guidelines:
-
Assignment: Only create a pull request if you've been assigned to the issue.
-
Timeframe: Complete the task within 3 business days of assignment.
-
Closing the Issue: In your PR description, close the issue by writing
Close #[issue_id]
. -
Review Process:
- Once you've submitted your PR, change the label to "ready for review".
- If changes are requested, address them and then update the label back to "ready for review" once done.
-
Testing: Test your PR locally before pushing, and verify that tests and build are working after pushing.
-
Pull Request Steps:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to your branch
- Create a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For questions and support, please join our telegram channel https://t.me/SQcontributors