Giter Site home page Giter Site logo

balrammishra / rems-for-organisations Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bearlike/rems-for-organisations

0.0 0.0 0.0 10.81 MB

๐Ÿš€ Resources and Event Management System for student organizations/clubs. Bulk mailer, certificate generation and many more.

License: MIT License

Shell 0.01% JavaScript 6.96% PHP 87.25% CSS 4.44% HTML 1.17% Dockerfile 0.16%

rems-for-organisations's Introduction


CMS For Organisations

Responsive Resources and Event Management System for small organisations and clubs. Form Generator, Mailer, Certificate Generator and much more :)

Why are we doing it?

We are running a chapter (club) at our college. We organize 20+ events for our 1500+ participants. It was a tedious process to manually make forms, certificates, advertising via mail so we decided to automate that process. Any organization, clubs or institutions looking for a similar service can fork our project and tweak it according to their needs.

Getting Started

Prerequisites

What things you need to run the software:

  • A web server with PHP preferably Apache2.
  • A MySQL Database Server. (Done and tested on 10.4.8-MariaDB)

Installation

  1. Download the latest stable release from here
  2. Create and Import the Main Database dump for MySQL-MariaDB from here
  3. Create a Forms Database.
  4. Copy the files from this repository to a location in the root directory of the web server
  5. Rename member/secrets.php_ to member/secrets_.php
  6. Update your database credentials, databases names (Main and Forms) and API Keys in member/secrets.php and public/cds-public.php
  7. With your Web Server and MySQL server running, visit the site
    •  Default Username: admin
       Default Password: admin
      
  8. If any error occurs, check your configurations in member/secrets.php and public/cds-public.php and try again

Running REMS as a Docker stack (Experimental).

  • Installation guide for Docker and docker-compose.
  • Modify the default values in docker-compose.yml, docker/mysql/database.sql and docker/secrets_.php to your requirement.
  • By default, exposes to host port 8080. A krishnaalagiri/rems and mariadb container would be configured and deployed.
  • For only the first time, the stack needs to be restarted due initdb in database containers. From the second time, you can directly start the stack.
# From the root of the repository
docker-compose up -d
sleep 60
docker-compose restart

Features and Screenshots (Click to enlarge)

Tested on Apache/2.4.41 (Win64) OpenSSL/1.1.1c PHP/7.3.11 with 10.4.8-MariaDB

Certificate Generation and Distribution System (CGDS)

A two-ended system (Both for admin and public) that'll automatically generate certificates and make them available for distribution. The admin will have to upload a Certificate Template and a CSV file with Participant Names, Position Awarded, and Event Name. The generated certificates would be later automatically made for distribution.

CDS Public (Collection) CDS Admin (Generation) Generated Certificates

Database Management

This is an interface for the databases that are used. The administrator can update, insert and delete values from any table of the databases without having to risk cluttering with the structure or format. The interface is made as generic possible to support future development and extensions.

Database Manager Modify Tuples If Error Occurs

Form Generation

This tool is used to generate forms for events. Initially, the specifications of the event must be selected and a form is generated with the designated fields and a table is automatically created in forms-db. The form also has built-in validation for all the fields (emails, URLs, etc) and Markdown support for event descriptions. Once the form is sent out, the entered values are updated in the database.

Form Generator Sample Generated Form

Bulk Mailer

The mailer can send automatically send emails to a specific mailing list. It supports HTML emails and comes with a pre-designed template. The parameters for the pre-defined template can be modified for the specifications of the organization. There is also a feature to create mailing lists to use with these mailers. A CSV of the emails and names has to be uploaded ana a mailing list is created.

Bulk Mailer Interface Mailing List Generator Sample Sent Mail

View Responses

To view all the Responses for generated forms with an option to download the responses as a CSV.

View Form Responses

Link Shortener

A link shortener that uses the short.io API to render shortened links for distribution. It can make shortened link either with a custom slug or can automatically generate slugs for links.

Link Shortener with short.io API

Dark Mode ๐ŸŒ™

Perhaps our most desired feature, it gives an option to toggle the page between dark mode and light mode. Saves your eyes in the night ๐Ÿ‘€

Dark Mode Preview

Authors

Krishnakanth Alagiri Mahalakshumi V
f f
@bearlike @mahavisvanathan

Outside Contributors

Contributors Profile Links PR
Dhiraj V dhirajv2000 #28

Acknowledgments

  • Hat tip to anyone whose code was used.

wave

rems-for-organisations's People

Contributors

bearlike avatar mahavisvanathan avatar imgbotapp avatar imgbot[bot] avatar dhirajv2000 avatar

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.