{"id":27966374,"url":"https://github.com/avored/avored-rust-cms","last_synced_at":"2025-05-07T20:18:25.194Z","repository":{"id":174344791,"uuid":"652102135","full_name":"avored/avored-rust-cms","owner":"avored","description":"Avored rust content management system","archived":false,"fork":false,"pushed_at":"2025-05-07T09:56:51.000Z","size":17487,"stargazers_count":104,"open_issues_count":8,"forks_count":24,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-05-07T20:18:19.069Z","etag":null,"topics":["api","axum","axum-framework","axum-middleware","cms","cms-backend","cms-framework","content-management","content-management-system","graphql","hacktoberfest","rest-api","restful-api","rust","rust-cms","rust-lang","surreal","surrealdb","tokio","tokio-rs"],"latest_commit_sha":null,"homepage":"https://avored.com","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/avored.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["indpurvesh"]}},"created_at":"2023-06-11T05:02:39.000Z","updated_at":"2025-05-07T09:19:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"cdd9d235-4a0f-4bce-89be-b96cffb52c03","html_url":"https://github.com/avored/avored-rust-cms","commit_stats":{"total_commits":392,"total_committers":7,"mean_commits":56.0,"dds":0.06377551020408168,"last_synced_commit":"61651eb556546d5e6d5117118515b43f037f699d"},"previous_names":["avored/avored-rust-cms"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avored%2Favored-rust-cms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avored%2Favored-rust-cms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avored%2Favored-rust-cms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avored%2Favored-rust-cms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/avored","download_url":"https://codeload.github.com/avored/avored-rust-cms/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252949236,"owners_count":21830154,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","axum","axum-framework","axum-middleware","cms","cms-backend","cms-framework","content-management","content-management-system","graphql","hacktoberfest","rest-api","restful-api","rust","rust-cms","rust-lang","surreal","surrealdb","tokio","tokio-rs"],"created_at":"2025-05-07T20:18:24.569Z","updated_at":"2025-05-07T20:18:25.182Z","avatar_url":"https://github.com/avored.png","language":"Rust","funding_links":["https://github.com/sponsors/indpurvesh"],"categories":[],"sub_categories":[],"readme":"# Avored rust content management system\nAvoRed Rust CMS implement with the help of axum web framework and surrealdb as database. \n\n\n[![AvoRedCMS](https://github.com/avored/avored-rust-cms/actions/workflows/rust.yml/badge.svg)](https://github.com/avored/avored-rust-cms/actions/workflows/rust-test.yml)\n\n### Join community via slack\n[![Join community via Slack](https://img.shields.io/badge/Slack-4A154B?style=for-the-badge\u0026logo=slack\u0026logoColor=white)](https://join.slack.com/t/avoredrustcms/shared_invite/zt-22031l11y-EYp3a3oWVVFaZ8WCWZAkJQ)\n\n## Demo admin\n\nPlease visit [Demo AvoRed Rust CMS Admin](https://demo.avored.com/admin)\n\n## Installation\n\n    git clone https://github.com/avored/avored-rust-cms.git\n    cd avored-cms\n    cp .env .env.dev    //Basically copy the .env.example file to .env\n    \n\nSet up your `.env.dev` file you can rename the existing `.env.prod` file make sure the database folder name, password salt, jwt secret setup properly random string and smtp information setup right if you wanted to use the forgot password feature(optional) NOTE: for local dev smtp info can be ignored.\n\n### Start your application backend\n    cargo run\n\nOnce the application start you can visit `http://localhost:3000/setup` this url will create database tables and admin user once you submit it and redirect to login screen but ignore this page as we got react admin setup in progress.\n\n### Start react application admin\n    cd react-admin\n    cp .env.example .env    //Basically copy the .env.example file to .env\n    npm i\n    npm start\n\nVisit `localhost:3000/admin` to access the react admin for the portal. Right now react admin does not have many pages redone yet but work in progress.\n\n\n## Features\n\n- [x] Admin Users\n- [x] Roles/Permissions\n- [x] Components\n- [x] Pages\n- [x] Fields\n- [x] Asset Manager\n\n## RoadMap\n - [ ] Rest API\n - [ ] GraphQL API\n - [ ] Content Workflow\n\n##### Setting up full Stack project in RUST\n\n - [x] Web Framework ([Axum](https://github.com/tokio-rs/axum))\n - [x] SurrealDB ([Surreal DB](https://surrealdb.com/))\n - [x] Email Views ([Handlebars](https://github.com/sunng87/handlebars-rust))\n - [x] Display Form Validation Error\n \n### Dev help \n\nHow to do a loop inside the handlebar template\n\n    {{#each validation_message as |message|}}\n        {{ message.mssage }}\n    {{/each}}\n\nHow to render a variable in handlebar template \n\n    {{ variable_name }}\n\nHow to call helper method in handlebar template \n\n    {{ helper_method_name \"argument\" ~}}\n\nHow to start a surreal db\nsurreal start --user root --pass root --bind 0.0.0.0:8000 file://test.db\n\n#### Introduction\n\nAvored headless CMS enables efficient content management for websites, mobile apps, and various digital platforms. \nBy decoupling the content from the presentation layer, it gives developers the flexibility to build frontends \nusing their preferred technologies. With an avored headless CMS, content is centralized, making it easy to \ncreate, manage, and seamlessly deliver it to multiple applications.\n\nDiscover more about Headless CMS concepts.\n\n###### Features\n - **Comprehensive Asset Management**: Organize and manage images, media, files, and other assets with ease.\n - **User-Friendly Content Management**: Simplify page content management for both technical and non-technical users.\n - **Seamless Content Distribution**: Deliver your content anywhere instantly using REST APIs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favored%2Favored-rust-cms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favored%2Favored-rust-cms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favored%2Favored-rust-cms/lists"}