Skip to content

cbgaindia/strapi4-dashboard

Repository files navigation

Budget Basics Strapi

Part of the Open Budgets India Project


MIT License

Budget Basics aims to demystify concepts and processes of Government budgets in India. Built as a documentation platform, it provides the content in easily digestible form. This is the back end of the platform built using Strapi CMS. Front end available here.

Visit Budget Basics

Features

  • Fully functional Strapi CMS to be used for documentation/blogging site.
  • Comes preinstalled with all the required content fields.
  • MeiliSearch to make search fast, easy and auto-update using webhooks.
  • Using Enhanced build of CKEditor 5 as the WYSIWYG editor.

For Developers

  • This project uses PostgreSQL as a database but you have multiple options.
  • Front end paradise. Add content fields and create APIs without touching the backend code.
  • Exhaustive documentation provided by Strapi for all of their features and use-cases.

Getting Started

Make sure to have a recent version of Node. You'll need Node 12.x or later. You can find a detailed guide here

Before starting Strapi, you will need to start a PostgreSQL instance.

Postgres

Start by installing Postgres

  sudo apt-get install postgresql 

Start Postgres

  sudo service postgresql start
  sudo -u postgres -i
  psql postgres

Create database

  CREATE DATABASE strapi4;

Create user

  CREATE ROLE strapi_user WITH LOGIN PASSWORD 'strapi_pass' CREATEDB;

Grant database access to user

  GRANT ALL PRIVILEGES ON DATABASE strapi4 TO strapi_user;

Start Strapi

Clone the project

  git clone https://github.com/cbgaindia/strapi4-dashboard.git

Go to the project directory

  cd strapi4-dashboard

Install dependencies

  npm install

Environmental Variables

Create .env file and paste:

HOST=0.0.0.0
PORT=1337
APP_KEYS=
API_TOKEN_SALT=
ADMIN_JWT_SECRET=
JWT_SECRET=
💥 Please use secure keys

Build and start the server in development

  npm run build && npm run develop

or start production mode

  npm run build && npm run start

This will start the server at http://localhost:8001 and Strapi dashboard at http://localhost:8001/dashboard

Meilisearch

We are using Meilisearch to handle search functionality in our project. It is open-source and awesome.

Meilisearch Instance

There are lots of ways to install Meilisearch. I'll go with the fastest one here.

Install MeiliSearch

  curl -L https://install.meilisearch.com | sh

Launch MeiliSearch

  ./meilisearch --http-addr '127.0.0.1:8000' --master-key="mysuperawesomesearchkey"
💥 Please use more secure keys

Now, your Meilisearch instance is running at 127.0.0.1:8000.

Meilisearch on Strapi

This repo already contains the Meilisearch plugin installed. All you need to do is set up your host, api key and select the content type.

  • Go to the Strapi Dashboard http://localhost:8001/dashboard and select Meilisearch under plugins.

  • Add 127.0.0.1:8000 as the Host, mysuperawesomesearchkey as the API Key.

  • Select the topic under the list and click "Reload Server" to set up a webhook.

Now if you go to 127.0.0.1:8000, you will find all the topics (sections) you have created ready to be searched.

Contributing

For any new feature or fixes, please request it in issues or create a new pull request.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published