A markdown-based SAAS collaboration and information exchange platform that allows users to create and share wikis with the world community!
-
Create a basic user scheme for a Ruby on Rails application.
-
Give the users of the application the ability to sign up using the Devise gem.
-
Create CRUD routes and resources in a Rails Application.
-
Integrate Stripe third party API callouts.
-
Integrate Redcarpet Markdown rendering gem.
- offer three user roles: admin, standard(free), premium(upgrade)
- allow users to sign-up for a free account
- allow users to sign-in and sign-out
- allow users with a standard account to create, view, edit, and delete their public wikis
- edit wikis using markdown
- allow users to upgrade from a free to a paid plan : NOTE The transactions are demos.
- allow premium users to create private wikis
- allow premium users to add and remove collaborators for my private wikis
-
Public wikis are visible without an account, but you must sign up to create wikis. Sign up and confirm your account via email.
-
Sign up and confirm your account via email.
-
Login with your credentials.
-
You will be presented with the wikis index page.
-
Your username will be presented in the upper-right corner with navigation options: Go Premium, Edit Profile, Sign Out. Go Premium becomes Standard when the account is upgraded and vice versa when downgraded.
-
Click on a wiki to to see more details. A new button will populates on the index page after sign in. Use it to quickly create a public wiki.
-
mockpedia link takes you to your wikis page. You can create and view wikis from here as well.
-
Click one of your wikis to see details. There will be options to edit, delete, etc…
-
Click Wikis link or wikis button from any page to return to the wikis index page.
-
Click Go Premium to upgrade.
-
Click Pay with card Enter details.
-
Click Pay Your wikis are now private. You also have the ability to add unlimited collaborators.
-
Click Standard to downgrade from premium.
- Ruby version 2.3.8
- Ruby on Rails 4.2.5
- Bootstrap
- SQLite (Test, Development)
- PostgreSQL (Production)
- Devise for user authentication
- Pundit for authorization
- Redcarpet for Markdown
- SendGrid for email confirmation
- Stripe for payments
- Figaro for secure configuration
- Faker for seeding data
Figaro creates a config/application.yml file, which sets up and stores environment variables, and adds it into your .gitignore file. The config/application.example.yml file demonstrates the appropriate way to store environment variables.
Run mockpedia locally:
- Clone the repository
- Run bundle install
- Create the SQLite database with rake db:create
- Migrate the SQLite database with rake db:migrate
- Start the server using rails server
- Run the app on localhost:3000
Made by: Tyrant Davis