Revelio is a platform for managing and documenting smart contracts on the Algorand blockchain. It provides a centralized registry for ARC56 contract specifications, making it easier for developers to discover, understand, and interact with smart contracts.
- Contract Registry: Store and manage ARC56 contract specifications
- Project Management: Organize contracts by project
- Versioning: Track contract upgrades and changes over time
- API Access: Programmatically access contract information
- User Authentication: Secure access to contract management
- Ruby 3.2.0 or higher
- Rails 8.0.0 or higher
- PostgreSQL 12 or higher
- Node.js and Yarn for JavaScript dependencies
-
Clone the repository:
git clone https://github.com/loedn/revelio.git cd revelio -
Install dependencies:
bundle install yarn install -
Set up the database:
rails db:create rails db:migrate
-
Start the server:
bin/rails s
-
Visit
http://localhost:3000in your browser
Revelio provides a RESTful API for accessing contract information:
GET /api/v1/projects- List all projectsGET /api/v1/contracts/:app_id- Get contract by application IDGET /api/v1/contracts/:app_id/by_round/:round_number- Get contract by application ID and round numberGET /api/v1/contracts/project/:abbreviation- Get all contracts for a project
For detailed API documentation, visit /docs in the application.
bin/rails testThis project uses RuboCop for Ruby code style:
rubocopbin/rails lint- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- The Algorand Foundation for the ARC56 specification
- All contributors who have helped build and improve Revelio