Rails API Base
Rails API Base is a boilerplate project for JSON RESTful APIs, following community best practices in terms of standards, security, and maintainability. It includes features like user authentication, an administration panel, and API documentation.
Key Features 🚀
Schema: Comes with predefined schema for users and admin users, ensuring a solid foundation for user management.
Endpoints: Includes essential endpoints for:
- User authentication (sign up, sign in, sign out, reset password)
- User profile management (get and update user profile)
Administration Panel: Thanks to ActiveAdmin, you get a plug-and-play admin console for easy management.
Feature Flags: Supports feature flags with a UI for management, allowing for controlled feature rollouts.
Code Quality Tools: Integrates various tools for maintaining high code quality:
- RSpec for testing
- RSpec API Doc Generator for API documentation
- Rubocop for Ruby linting
- Reek for code smell detection
- Brakeman for security analysis
Docker Support: Facilitates containerization for consistent development environments.
API Documentation: Follows OpenAPI standards for clear and comprehensive API documentation.
Why Start with Rails API Base? 🌟
Community Best Practices:
- This template adheres to the latest Rails 7.2 and Ruby 3.3 standards, ensuring your project starts with the best practices in terms of security, maintainability, and performance.
Time-Saving Setup:
- With pre-configured user authentication, admin panel, and essential endpoints, developers can skip the boilerplate setup and dive straight into building features.
Comprehensive Testing and Documentation:
- The inclusion of RSpec for testing, along with tools for generating API documentation, means your project will be well-tested and documented from the start.
Scalability and Maintainability:
- The template's structure and tools like Pundit for authorization, Flipper for feature flags, and DelayedJob for background processing, make it easier to scale and maintain your application.
Developer Experience:
- With scripts for running commands, managing dependencies, and even a development server, the template enhances the developer experience, making it easier to work on the project.
Security and Compliance:
- Tools like Brakeman for security analysis and Strong Migrations for safe database migrations ensure your project adheres to security best practices.
Monitoring and Performance:
- Integration with New Relic for monitoring and Pagy for pagination helps in tracking performance and managing large datasets efficiently.
Customization and Flexibility:
- While providing a solid foundation, the template allows for extensive customization, from setting up your frontend URL to configuring CI/CD pipelines.
Conclusion 🎉
Rails API Base is not just a template; it's a comprehensive starting point for any Rails API project. It encapsulates the collective wisdom of the Rails community, providing a robust, secure, and maintainable foundation for your API development. Whether you're a seasoned developer or new to Rails, this template can significantly accelerate your project's development cycle while ensuring best practices are followed from the outset.
Details
- Features
- api authentication admin panel
- Purpose
- API
- Paid
- No
- Rails Version
- 7.2
- License
- MIT
- URL
- https://github.com/rootstrap/rails_api_base