violet_rails

an app engine for your business. Seamlessly implement business logic with a powerful API. Out of the box CMS, blog, forum and email functionality. Developer friendly & easily extendable for your next SaaS/XaaS project. Built with Rails 6, Devise, Sidekiq & PostgreSQL

95
43
Ruby

violet-logo-horizontal-with-wordmark

Ruby/Node.js Build
Brakeman Scan
Heroku Deployments
AWS EC2 Deployments

The Ultimate Rails-based, Web and Automation Platform ๐ŸŒ

Built for your digital needs, trusted by startups and founders ๐Ÿš€

Violet enables subdomain based:

  • ๐Ÿ“ง Email
  • โœ๏ธ Blog
  • โ„น๏ธ Forum
  • ๐Ÿ“Š Analytics
  • ๐Ÿฆพ Automation
  • ๐Ÿค Collaboration

So you can have your marketing site hosted on www.mywebsite.com, while receiving support requests under [email protected] and building the Next Big Thingยฎ๏ธโ„ข๏ธ at app.mywebsite.comโ€“ all powered by Violet Rails.

Feel the power & productivity of the Majestic Monolith! ๐Ÿ˜

Architecture overview

Document systems-2

Features โœจ

โœจ A powerful website builder ๐ŸŒ

Powered by a rich Content Management System with out of the box support for Bootstrap 4 and jQuery, you can edit HTML templates either with a content first or markup first approach. Create both public and private web pages with ease.
Screenshot from 2021-05-21 17-21-45


Examples of inspirational websites built with Violet Rails ๐Ÿš€

  1. Coffee Oysters Champagne: https://www.sipshucksip.com
  2. Marked Restaurant: http://markedrestaurant.com
  3. a toi: https://a-toi.ca

โœจ A flexible app, automation and analytics platform ๐Ÿฆพ

Build apps and automation with Violet Rails API Namespace: https://github.com/restarone/violet_rails/wiki/API:-Entities,-Form-Rendering,-Interfaces-and-Actions

Building forms ๐Ÿ“œ

Build spam-resistant forms with Google Recaptcha v2 or v3. Since all systems in Violet Rails are vertically integrated, your forms can talk to your automations and analytics.
Screen Shot 2022-06-26 at 5 59 10 PM

Automation ๐Ÿค–

Build custom automation (eg mailchimp: https://github.com/restarone/violet_rails/issues/720) with ease with Ruby code or our HTTP API Editor (https://github.com/restarone/violet_rails/wiki/API:-Entities,-Form-Rendering,-Interfaces-and-Actions#http-api-editor-example-discord-bot)

Analytics ๐Ÿ“ˆ

Easily build funnels and data analytics systems with Violet Rails Data pipeline.
Screen Shot 2022-06-26 at 6 08 34 PM
Screen Shot 2022-06-26 at 6 08 46 PM

โœจ Native iOS support ๐Ÿ“ฑ ๐ŸŽ

Every Violet Rails app transition seamlessly between web (left) and iOS (right)
Screen Shot 2022-06-26 at 1 46 32 PM

iOS repository: https://github.com/restarone/violet_rails_ios_client

Examples of inspirational โœจ apps ๐Ÿ—บ๏ธ built with Violet Rails ๐Ÿš€

  1. Nikean Foundation: https://www.nikean.org
  2. Restarone Solutions Tech Support: https://support.restarone.solutions
  3. Restarone Software Solutions: https://restarone.com
  4. Marked Restaurant: http://markedrestaurant.com
  5. Opportunities at Restarone: http://contractors.restarone.solutions

โœจ Rich user management system with invites and granular permissions ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘

Allow your outreach team to support the forum and blog, while the designers and developers work on the web pages.
Screenshot from 2021-05-21 17-25-15

โœจ Simplest Email Service ๐Ÿ“ง

Each Violet Rails
subdomain will have access to its own emailbox for sending and receiving emails:
Screen Shot 2022-06-26 at 5 55 10 PM

โœจ Forum ๐Ÿค

Full fledged community support with moderators and user permissions
Screen Shot 2022-06-26 at 6 16 51 PM

โœจ Blog โœ๏ธ

Blogging, everyone needs it right?
Screenshot from 2021-05-21 17-31-21

โœจ Two-tier admin system ๐Ÿ“‹

Domain admins have control over which subdomains can be created (via approval) and destroyed. Subdomain admins have full control over their subdomain only.
Screenshot from 2021-05-23 14-04-06

โœจ Sensible architecture and safe defaults

  • Database multi-tenancy: Serious SaaS and XaaS apps need to support database multi-tenancy. So if you ship Violet with Postgres you will have schema based multi-tenancy with the option of routing each client at run-time to an external Postgres server. All of this is implemented in a simple way, just by subdomain (eg: design.your-website.com).
  • Flexible and code first: The Violet CMS is powered by comfortable_mexican_sofa and offers the customizability of a Rails engine with full WYSIWYG functionality (its recommended that you stick to HTML/CSS/JS for static web hosting). Outside of this, its just Ruby on Rails โ€“ the world is your oyster.
  • Ready to Deploy: Violet comes with a barebones App Owner UI that helps you hit the ground running by managing subdomain requests. Each subdomain has its own roster of Users and an automatically allocated email-box (eg: [email protected]), blog (eg: www.your-website.com/blog) and landing page (www.yourwebsite.com). Granular permissioning for users can be managed at the subdomain level.

โœจ Authorization layers

After deploying violet, you will be able to connect and setup your cannonical page and user account from the Rails console.

1. App Owners (Violet Sys Admin)

Subdomain Owners (Web Admin)

To register a subdomain, visit https://yourdomain.com/signup_wizard
For security purposes, this only generates a request-- so the sysadmin will need to approve the subdomain registration at: https://www.yourdomain.com/sysadmin

  • If you are the first user in a subdomain, you are conferred maximum permissions

Deployment ๐Ÿš€

There are 2 options for deployment using AWS EC2 and Heroku

The Demo of violet_rails is deployed on AWS EC2 (using Ubuntu 20.04 LTS) & requires some server setup/automation with Capistrano. The steps are outlined in-detail here: https://github.com/restarone/violet_rails/wiki/Deploying-to-EC2-(with-Capistrano)

If you prefer deploying to Heroku, you can view the guide for that here

Want to build on top of Violet Rails?

The local development environment is supported by docker. After installing docker and docker-compose take a look at the development cheatsheet for setting up the development environment along with useful scripts: https://github.com/restarone/violet_rails/wiki/Getting-started-(development-cheatsheet)