Skip to content

Labguy is an open-source content management system designed for multimedia artists, developed by @jakubkanna πŸ‘¨β€πŸ”¬.

License

Notifications You must be signed in to change notification settings

jakubkanna/labguy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

17 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Labguy - Open-Source CMS for Multimedia Artists

Deploy to Sever

What started as a simple student project to create a blog API turned into a nearly one-year journey of researching the best solution for creating a Content Management System (CMS) suitable for artists.

Although I don't consider it to be 'the best,' I believe it offers an interesting alternative for those looking for a CMS that supports various types of media (3D, sound, video, high-quality images), is fast, and offers good scalability.

Architecture

Labguy consists of three main applications, all written in TypeScript:

  • Client
  • Dashboard
  • REST API

You can find the code for each part in the respective repositories:

How It Works

Labguy uses a Express server in conjunction with Prisma and JSON Web Tokens (JWT) to process CRUD requests from the Dashboard and GET requests from the Client. It's self-hosted and doesn't require any third party service (SaaS).

Dashboard

The Dashboard is built with:

  • React
  • @mui/material
  • react-router-dom
  • tinymce
  • @rjsf/core
  • material-react-table

The Dashboard is ready to be hosted on GitHub, with automatic sync and deployment using GitHub Actions.

REST API

The REST API relies on:

  • Express
  • Prisma
  • Cloudinary
  • Multer

It also includes deployment actions for automatic updates.

Client

The Client is built individually. There is no predefined pattern, as it is best to create a personalized front-end application that follows the design rules set by the project. Labguy-client serves as a boilerplate to get started.

Inspiration

Examples of the Client can serve as inspiration for design and usage, showcasing how to integrate the various features and media types Labguy supports.

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3

About

Labguy is an open-source content management system designed for multimedia artists, developed by @jakubkanna πŸ‘¨β€πŸ”¬.

Resources

License

Stars

Watchers

Forks

Packages

No packages published