Coder Social home page Coder Social logo

mustafaskyer / letterpad Goto Github PK

View Code? Open in Web Editor NEW

This project forked from letterpad/letterpad

0.0 1.0 0.0 18.19 MB

Letterpad is an open-source and a high performant publishing engine, built with react & graphql and runs ridiculously fast ๐Ÿš€

Home Page: https://letterpad.app

License: MIT License

Shell 0.18% JavaScript 0.23% TypeScript 17.58% CSS 81.52% Twig 0.50%

letterpad's Introduction

Letterpad Admin is the dashboard for publishing blogs.

Features

  • High performant GraphQL API.
  • Uses Graphql, React Apollo, NextJS and Prisma
  • Uses TinyMCE editor, specially composed for Letterpad
  • Theme customisation (css) from Dashboard.
  • Use Language Tool AI Model to check grammar.
  • CDN Powered images (Uses cloudinary and Unsplash)
  • Connects to multiple databases. Default is sqlite3
  • Can be used as a multi-user service
  • Minimalistic Dashboard

Demo:

https://letterpad.app/admin/login?demo

Without self hosting

You can register in https://letterpad.app/admin/register and start writing posts, free of cost.

With self hosting

There are few things that you should know before running letterpad in a production environment.

  • In the root folder, you will find a file .env.sampple. Clone is file and rename it to .env. The most important key is SECRET_KEY, set the value of this key to something different. This key is used to encrypt passwords, sessions and preview links.

  • Letterpad Admin runs on the url /admin. If you would like to run the admin dashboard in the root url, edit next.config.js and remove the basePath. Also open .env and remove the /admin from all the urls.

  • Run the below commands.

yarn install
yarn seed
yarn build
yarn start # starts the server
Email - [email protected]
Password - demo

Enabling Emails

Letterpad integrates with Gmail. You should set GMAIL_USER and GMAIL_PASSWORD in ..env file to activate emails.


Captcha for registrations

This section is required only if you want to use Letterpad as a multi-user account. Letterpad uses ReCaptcha. You can register and set the RECAPTCHA_KEY in .env.


Running Letterpad on Development Mode

First install the node modules and seed the database using

yarn install
yarn seed

yarn seed will reset the database. So use this only in dev environment. When you execute this command, it is going to create the prisma client from the env variable DATABASE_URL, with which it is going to seed the database.

If you want to swith the db to something different like mysql, you should change the DATABASE_URL and generate the client with the command prisma:generate.

Then, run the development server:

yarn dev

Open http://localhost:3000/admin with your browser. You can login with the test account mentioned below

Email - [email protected]
Password - demo

Letterpad has been developed using Next.js. To learn more about Next.js, take a look at the following resources:

Letterpad Client

We also have a letterpad client which you can find in this repository. The letterpad client is a simple react application which uses the graphql API of letterpad to render a public facing blog.

Demo: https://demo.letterpad.app

Letterpad Admin provides a client key which can be found in settings. If you want to host the client in a different domain, then you should set this client_key in next.config.js.

Contribute

You are welcome to contribute to the project. If you find any bugs, please create an issue or a pull request. Also if you would like to have a feature, feel free to inform us with an issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.