• Stars
    star
    143
  • Rank 257,007 (Top 6 %)
  • Language
    PHP
  • License
    MIT License
  • Created over 4 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🚀 Streamline club management with our all-in-one system: bulk mailer, certificate generator & more. Perfect for student organizations.


CMS For Organisations

Efficiently manage resources and events with ease. Our system includes a Form Generator, Mailer, Certificate Generator, and more – perfect for small organizations and clubs!

This repository is currently not actively maintained due to our team's commitments elsewhere. 💬 We're seeking open-source contributors who can lend a hand! If you're interested in contributing, don't hesitate. Every bit of help makes a difference. ✨

Introduction

Looking to streamline your organization's event planning process? REMS can help you! Originally created for our college chapter, we've automated the tedious task of creating forms, certificates, and advertising via mail for our 20+ events with 1500+ participants. Now, any organization, club, or institution can easily fork our project and customize it to fit their unique needs. Join the thousands who have already benefited from our service and give it a try today!

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)
  • PHP Extensions pdo_mysql, xdebug, and gd needs to be installed.

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

Got Issues?

If you're new to the project and run into any blockers, please open an issue on this repository. We'd love to get it fixed for you! Please use the appropriate issue template as it would help us understand the issue faster.

Contributors 🌟

✨ Looking to contribute to our GitHub project? We'd love to have you on board! Feel free to raise issues and pull requests for bug fixes, new features, and improvements. ✨

Krishnakanth Alagiri 👨‍💻 Mahalakshumi V 👩‍💻 Dhiraj V
f f f
@bearlike @mahavisvanathan @dhirajv2000

Acknowledgments

  • Hat tip to anyone whose code was used.

wave

More Repositories

1

Media-Library-Organiser

🍿 Organising and bulk renaming media library made easy with Python and IMDb (Essential for XBMCs, Plex etc.)
Python
84
star
2

Pixel-Portfolio-Webite

A Nintendo inspired lightweight, No BS responsive single-page portfolio website built with HTML and CSS 👾
CSS
79
star
3

my-popos-setup

A list of boring installations and configurations that I have to do every time I flush my PC.
HTML
21
star
4

scripts

Collection of automation scripts. I hope you find it useful.
Python
18
star
5

Personal-Assistant

🚀 Meeseeks: LLM-powered, multi-agent assistant that breaks down complex tasks, integrates with various tools, & performs actions using natural language.
Python
17
star
6

remove-git-email-leak

Find and remove publicly accessible git commit email addresses.
Python
11
star
7

Remote-CMD

Establish a Terminal session to a computer from another computer without SSH.
Python
10
star
8

Thanos.py

Inspired by Thanos - Marvel Super Villan. Randomly Deletes half of your files (Decimation on your files)
Python
4
star
9

C-98-Programs

Contains miscellaneous C++98 programs to help understand various aspects of programming and nuances of programming
C++
3
star
10

Connect-4

🎮 Connect Four (also known as 4-in-a-row) is an exciting two-player puzzle connection game recreated with PyGame and Python.
Python
3
star
11

The-Truck-Rally-Game

A 2D game made using the discontinued Borland Turbo C++ compiler during my class 12th
C++
3
star
12

simple-secrets-manager

Secure storage, and delivery for tokens, passwords, API keys, PKI and other secrets using HTTP API or Swagger UI.
Python
3
star
13

RPi-Landing-Page

A Minimalistic Landing page that displays system information for you Raspberry Pi and redirects you to your favorite pages.
PHP
2
star
14

dotfiles

Dotfiles are how you personalize your system. These are mine
Shell
2
star
15

Bhumi-Creatives

A website for designers and developers to find and share resources to build apps and sites between NGOs.
JavaScript
1
star
16

UnCtrl-V

Type the contents stored in your Clipboard (instead of pasting them).
Python
1
star
17

docker-web-dashboard

🤖 A speed dial for your server
JavaScript
1
star
18

Donation-Website

Donation website made for Bhumi
CSS
1
star
19

Data-Analytics-Assignment

Data Analytics - CS16004 from Semester 7
Jupyter Notebook
1
star