All Projects → HangarMC → Hangar

HangarMC / Hangar

Licence: MIT license
A plugin repository used for paper plugins

Programming Languages

java
68154 projects - #9 most used programming language
Vue
7211 projects
typescript
32286 projects
PLpgSQL
1095 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Hangar

Veluxi Starter
Veluxi Vue.js Starter Project with Nuxt JS and Vuetify
Stars: ✭ 39 (-74%)
Mutual labels:  nuxt, vuetify
solidata frontend
first draft for solidata_frontend : vue+nuxt+vuetify+i18n+axios
Stars: ✭ 15 (-90%)
Mutual labels:  nuxt, vuetify
Sails Nuxt
Sails + Nuxt + Vuetify Combo <3
Stars: ✭ 92 (-38.67%)
Mutual labels:  nuxt, vuetify
Electron Nuxt
⚡ An Electron & Nuxt.js / Vue.js quick start boilerplate with vue-cli scaffolding, electron-builder, unit/e2e testing, vue-devtools
Stars: ✭ 452 (+201.33%)
Mutual labels:  nuxt, vuetify
MeetU
Application that build on Elasticsearch and Spring Boot Microservices (Synchronous Service)
Stars: ✭ 22 (-85.33%)
Mutual labels:  nuxt, vuetify
Vuetify Module
Vuetify Module for Nuxt.js
Stars: ✭ 472 (+214.67%)
Mutual labels:  nuxt, vuetify
Vue People
VuePeople lists and connects Vue.JS developers around the world.
Stars: ✭ 167 (+11.33%)
Mutual labels:  nuxt, vuetify
awrora-starter
Landing page template built with one of most popular javascript library Vue.JS, Vuetify (Material Design) and Nuxt.JS with SSR.
Stars: ✭ 38 (-74.67%)
Mutual labels:  nuxt, vuetify
aio-rek
Face recognition based attendance system
Stars: ✭ 19 (-87.33%)
Mutual labels:  nuxt, vuetify
LaraNuxt
Laravel framework with integrated NuxtJs support, preconfigured for eslint, jest and vuetify.
Stars: ✭ 53 (-64.67%)
Mutual labels:  nuxt, vuetify
Nuxt Material Admin
Vue-CLI Boilerplate based on Nuxt and vue-material-admin template.
Stars: ✭ 310 (+106.67%)
Mutual labels:  nuxt, vuetify
Seiyuu.moe
A webpage searching for collaborate works between seiyuu.
Stars: ✭ 15 (-90%)
Mutual labels:  nuxt, vuetify
picty
Simple Image Viewer based on Electron
Stars: ✭ 17 (-88.67%)
Mutual labels:  nuxt, vuetify
Vue Stack
Minimalistic Boilerplate for FullStack Express and Vue.js applications
Stars: ✭ 26 (-82.67%)
Mutual labels:  nuxt, vuetify
blog-frontend
Frontend of blog created using: GraphQL (Apollo) + Vue + Nuxt.js + TypeScript + Vuetify...
Stars: ✭ 43 (-71.33%)
Mutual labels:  nuxt, vuetify
Vue Telescope Analyzer
Detect Vue technologies running on a website ✨
Stars: ✭ 117 (-22%)
Mutual labels:  nuxt, vuetify
nuxt-handson
Nuxt.js Hands-On
Stars: ✭ 24 (-84%)
Mutual labels:  nuxt, vuetify
blog3.0
博客V3.0 目前使用的技术(Nuxtjs + Nestjs + Vue + Element ui + vuetify),存储(MongoDB + Redis + COS)
Stars: ✭ 37 (-75.33%)
Mutual labels:  nuxt, vuetify
inshop-crm-ecommerce
Inshop CRM / ERP ecommerce. It's powerful framework allows to build systems for business with different workflows. It has on board multi language support, clients management, projects & tasks, documents, simple accounting, inventory management, orders & invoice management, possibilities to integrate with third party software, REST API, and many …
Stars: ✭ 48 (-68%)
Mutual labels:  nuxt, vuetify
lumen-cms
GraphQL API-First CMS based on NodeJS and Vue 2, Nuxt and Vuetify
Stars: ✭ 77 (-48.67%)
Mutual labels:  nuxt, vuetify

Hangar - Papers upcoming Plugin Repository

This is the repository for Hangar, a plugin repository used for Paper plugins and similar software.

Hangar is loosely based off of Ore, created by the Sponge project, but rebuilt from the ground up using the Spring Boot Framework in Java for the backend and nuxt (and vuetify) for the frontend (which is partially server rendered). We would like to thank all Ore contributors. Without them, this project would never have been possible.

There may or may not be a staging instance running at https://hangar.benndorf.dev It may or may not allow you to log in, please don't create too much of a mess so that I don't always need to nuke the DB when I want to use it.

Contributing

The project consists out of 4 parts

  • Frontend (written in Vue vite-ssr via vitesse)
  • Backend (Spring Boot)
  • Database (PostgreSQL)
  • User Management (HangarAuth; optional, see below)

There are two different environments that can be developed in, one using a fake user (aka without HangarAuth), or with HangarAuth. Most of the time you won't need to run Hangar with HangarAuth unless you are working with a feature that requires multiple user interactions.

Fake User environment (recommended, easy, no HangarAuth)

Fork the project and pull it in your IDE.

Prerequisites

  • Docker is required in order to run the PostgreSQL database.
  • Java 17 or higher.
  • pnpm

Setting up

To get the project running locally, you need to follow a few steps:

  1. To get the dummy database up and running, move to the docker folder cd docker then run docker-compose -f dev-db.yml up -d (-d as an optional parameter to run the containers in the background). Alternatively, if you are using IntelliJ you can press the green arrow in the docker/dev-db.yml file.
  2. Run the Spring Boot application. You can do it in the CLI with mvn spring-boot:run or if you're using IntelliJ, it's included in the run configurations.
  3. Move to the frontend directory: cd ../frontend. In that directory, run pnpm install. This will install all the needed Node modules.
  4. After the installation, run pnpm run dev in the frontend directory to initiate the build and launch. Changes you do to the frontend will be reloaded automatically.
  5. After that browse to http://localhost:333 and if all went well, Hangar should be up and running.

Notes

  • The Spring Boot configuration file that is used by this environment is located at Hangar/src/main/resources/application.yml
  • The fake user settings are located in the application.yml file under fake-user.

Hangar Auth (not recommended, complicated, requires like 6 more docker containers)

Fork this project and fork/clone HangarAuth. Ensure they are sibling directories in your file system.

Projects/
   Hangar/
      ...
   HangarAuth/
      ...

Prerequisites

  • Docker is required for all parts of this environment except the frontend
  • pnpm

Setting up

To get both Hangar and HangarAuth running locally:

  1. Setup HangarAuth
    1. See HangarAuth README
    2. Start HangarAuth's docker services
    3. Create HangarAuth's hydra client
  2. Move to Hangar's frontend directory Hangar/frontend. In that directory, run pnpm install followed by pnpm run dev.
  3. Set up the hangar client in hydra (see HangarAuth README)
  4. Navigate to http://localhost:3333 and login.

Notes

  • If using IntelliJ, you can view logs from each service in the Services tab (ALT+8).
  • The Spring Boot configuration file that is used by this environment is located at Hangar/docker/hangar/application.yml
  • This setup requires that the Hangar and HangarAuth projects be sibling directories.
  • To rebuild changes to Hangar, just rebuild in IntelliJ CTRL+F9.
  • To rebuild HangarAuth, run docker-compose up -d --build in Hangar/docker.

Deployment

Deployment happens via Docker, checkout the stack in the docker folder. The Spring Boot configuration file used for deployment can be found at docker/deployment/hangar-backend/application.yml.

Translations Crowdin

Hangar uses Crowdin for translations. The easiest way to help to translate is sign up to Crowdin at https://hangar.crowdin.com/hangar, joining the project and just add new translations or comment on or up/down-vote existing translations.
You can learn more about navigating the Crowdin UI here: https://support.crowdin.com/online-editor/

Getting translations locally (mostly for developers, requires crowdin cli, ran in root folder):

crowdin pull --skip-untranslated-strings -b master -T <PAT>

You might want to set the env var TRANSLATION_MODE to true, in order to get warnings about untranslated strings.

Contributing

There is a bunch of stuff to do, some of that is noted in the Roadmap Project. Your best bet is joining #development on the Hangar Discord and just discussing with us. All contributions are very welcome, we will not be able to finish this alone!

Updating the frontend dependencies can be done best by running npx npm-check -u and going thru the changelogs. Notice that package.json might contain some hints of which deps are broken.

License

Most of the frontend is a fork of Ore, licensed under MIT here. The rest is new code (but created in reference of Ore) and is licensed under the MIT license too.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].