Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork26
Avored rust content management system
License
avored/avored-rust-cms
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
AvoRed Rust CMS implemented with the help ofAxum web framework andSurrealDB as the database and aReact admin frontend.
Please visitDemo AvoRed Rust CMS Admin
Make sure the prerequisite are installed and then go through the install steps to install a local build of Avored.
Protobuf, Google's data interchange format written in C++, is required to be installed before build. Read more about it at the protocol buffers website:https://protobuf.dev/ or at the repositoryhttps://github.com/protocolbuffers/protobuf
- Install the precompiled binary on any OS
https://protobuf.dev/installation/
- Install Protobuf package on MacOS with
brew install protobuf
Rust, the systems programing lanugage for backend development.https://www.rust-lang.org/
NodeJS, the frontend web server and frontend toolchain.https://nodejs.org/en
- Clone the repository and create the local .env file from the
EXAMPLE.env.
git clone https://github.com/avored/avored-rust-cms.gitcd avored-rust-cmscp EXAMPLE.env .env.devcp .env.dev .env- Set up your
.env.dev, or.env.stg,.env.prd, file by adding the random strings for the password salt and JWT secret. The SMTP setup should be accurate if you wanted to use the forgot password feature(optionacd l).
NOTE: For local dev mail/SMTP info can be ignored, there are other ways to recover your login locally.
- Start your application backend
cargo run
- Navigate to the admin web app directory
cd ts-grpc-react-admininstall the javascript dependencies and start the admin page.
npm inpm run dev
Once the application start you can visithttp://localhost:3000/setup. This url will create the base database tables and an admin user once you submit the form on that page.
After the form submit a redirect to login screen will occur localhost:3000/admin. Use the email and password you set with the setup form.
Finished!
You can now visitlocalhost:3000/admin when the backend and frontend are running to access the react admin for the portal.
NOTE: Right now react admin does not have many pages redone yet but work in progress.
- Admin Users
- Roles/Permissions
- Components
- Pages
- Fields
- Asset Manager
- Rest API
- GraphQL API
- Content Workflow
- Web Framework (Axum)
- SurrealDB (Surreal DB)
- Email Views (Handlebars)
- Display Form Validation Error
How to do a loop inside the handlebar template
{{#each validation_message as |message|}} {{ message.mssage }}{{/each}}How to render a variable in handlebar template
{{ variable_name }}How to call helper method in handlebar template
{{ helper_method_name "argument" ~}}How to start a surreal dbsurreal start --user root --pass root --bind 0.0.0.0:8000 file://test.db
Avored headless CMS enables efficient content management for websites, mobile apps, and various digital platforms.By decoupling the content from the presentation layer, it gives developers the flexibility to build frontendsusing their preferred technologies. With an avored headless CMS, content is centralized, making it easy tocreate, manage, and seamlessly deliver it to multiple applications.
Discover more about Headless CMS concepts.
- Comprehensive Asset Management: Organize and manage images, media, files, and other assets with ease.
- User-Friendly Content Management: Simplify page content management for both technical and non-technical users.
- Seamless Content Distribution: Deliver your content anywhere instantly using REST APIs.
About
Avored rust content management system
Topics
Resources
License
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors13
Uh oh!
There was an error while loading.Please reload this page.