• Stars
    star
    558
  • Rank 79,819 (Top 2 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created almost 6 years ago
  • Updated 8 months ago

Reviews

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

Repository Details

Club Management System of amFOSS, powered by CMS

amfoss-cms-cover

CMS

Watchers Star Gazers Forks

Travis CI Version 0.5 GNU Total alerts Join the chat at https://gitter.im/amfoss/cms Open Issues PRs Contributors

Club Management System (CMS) is django-based web-app which lays framework for the amfoss website, the amfoss webapp, and the amfoss app.

💽 Installation Instructions

The portal is primarily a django based application, and to set it up we require to have python environment with django and other project dependencies installed. Though one can work with the project without an virtual environment, it is recommended to use one so as to avoid conflicts with other projects.

  1. Make sure that you have Python 3, python-3-devel, gcc, virtualenv, and pip installed.

  2. Clone the repository

        $ git clone https://github.com/amfoss/cms.git
        $ cd cms
    
  3. Create a python 3 virtualenv, and activate the environment.

        $ virtualenv -p python3 .
        $ source bin/activate
  4. Install the project dependencies from requirements.txt

        $ pip install -r requirements.txt
    

You have now successfully set up the project on your environment. If you encounter any problems during installation, you can refer to installation page on our wiki.

After Setting Up

From now when you start your work, run source bin/activate inside the project repository and you can work with the django application as usual -

  • python manage.py migrate - set up database
  • python manage.py createsuperuser - create admin user
  • python manage.py runserver - run the project locally

Make sure you pull new changes from remote regularly.

🚀 Data Models

🎉 Activities

The activity app tracks the activities of the club members.

  1. Certificates - carries certificates recieved by club members, also allows to upload them as attachments.
  2. Courses - records courses completed by club members, includes link to certificate.
  3. Events - logs events attended by student members such as Conference, Hackathons, Internships, Exchange Programmes etc.
  4. Honours - records achievements and honours recieved by club members, includes link to project, certificate.
  5. Projects - holds projects of the club, club teams and club members
  6. Publications - records publications made by club members
  7. Talks - records talks given by club members

👧 Members

The members app manages the profile and data of the club members

  1. Groups - manages groups inside the club
  2. Leave Records - records and manages the leave requests of club members
  3. Mentor Groups - manages mentor-menteee relationship of club members
  4. Profiles - manages the member profile
  5. Responsibilities - manages the various responsibilities held by a group of members
  6. Teams - manages the various internal teams inside the club

📨 Status

The status app manages the reporting system in the club

  1. Log - holds status updates posted by members, under different threads, for various subjects.
  2. Thread - manages status update threads

💫 API

The amFOSS CMS ships with GraphQL-based APIs. To help developers, GraphiQL, a tabbed interface (playground) for editing and testing our GraphQL queries/mutations, also has been furnished .

Documentation on the supported APIs has been provided in the wiki page.

📡 Integrations

  1. Attendance Module - the amFOSS attendance module is a raspberry-pi which live records the attendance of club members when they are in the FOSSLab. The AmFOSS CMS fetches attendance details from it and logs it.
  2. Telegram Bot - the amFOSS Telegram Bot is the bot assistant of the amFOSS Telegram group. The AmFOSS CMS triggers the bot to send notifications, statistics etc. to the group.
  3. GitHub - Integrates with GitHub to actively track the FOSS contributions made by club members

🔧 Tech Stack

  • Language: Python 3.7
  • Framework: Django 2.2
  • API: GraphQL (Graphene + JWT)

💎 Contributors

Developed with ♥️ by the amFOSS WebTeam from 2018.

  1. Ashwin S Shenoy - Core Developer, Maintainer

How to Contribute?

  1. Fork the repository, clone it locally and run it following the installation instruction above.
  2. Find an issue or feature to work on, and put up an issue.
  3. Work on the patch or feature, test it and send a pull request referencing the issue.

✒️ License

This repository is licensed under GNU General Public License V3. Though it was tailor-made for amFOSS, you are welcome to adapt it, make it yours. Just make sure that you credit us too.

More Repositories

1

fosswebsite

A club management system that handles student details, progress, events, achievements, attendance, status updates, teams and workshop registrations. This is the official FOSS@Amrita website
HTML
544
star
2

GitLit

Platform to connect contributors and projects based on skill level and shared interests.
Python
539
star
3

vidyaratna

Curated resources for newbies to get started with programming, open source, cyber security and many more fields.
535
star
4

website_old

The official website repo of amfoss
Roff
513
star
5

master-syllabus

Master Syllabus for FOSS@Amrita
507
star
6

App

The android app for community network for amFOSS members
Java
505
star
7

Wikimedia_Hackathon_Amrita_University

Organization store
HTML
504
star
8

fosster

Offical website for the technical event organised by FOSS@Amrita
JavaScript
502
star
9

Workshops

Archive of Workshops conducted by FOSS@Amrita
502
star
10

temple-app

This project is no longer actively maintained and has been archived for historical reference. Android App which handles the information about temple. People can register and keep a track of all poojas, donations made to the temple.
Java
501
star
11

automated-scripts

This project has been is obsolete and archived, and replaced by the amFOSS CMS
Python
500
star
12

amdec-website

JavaScript
499
star
13

bot

Telegram Chatbot Assistant for Managing Club Activities
Python
496
star
14

android-workshop-summer-2018

Repository of all the Java files and apps that will be taken in the RTE Workshop on Android in the Summer of 2018
Java
496
star
15

foss-meetups

JavaScript
496
star
16

WebApp

The react-based community network for amFOSS members
JavaScript
495
star
17

website

Website of FOSS@Amrita, Powered by JAMStack
JavaScript
490
star
18

cybergurukulam

Archive for the source of a website for "CyberGurukulam" program. This project (and corresponding website) is no longer actively maintained.
CSS
489
star
19

Qujini

Open Source Question Paper Generator
Python
489
star
20

kde-conf-2018

Source for a webpage for KDE conf 2018. This is archived for historical reference and is no longer actively maintained.
CSS
489
star
21

test-repo

This is a test repo, please fork me !!! \(^_^)/
488
star
22

praveshan

For Joining FOSS@Amrita
485
star
23

Hack4Amrita

Solving Problems of Amritians
481
star
24

cms-mobile

A flutter project for amfoss cms
Dart
448
star
25

attendance-tracker

Advanced Attendance Recording System for the members of FOSS@Amrita.
Python
436
star
26

events

Portal to host landing pages of amFOSS Events
JavaScript
425
star
27

internal-hackathon

423
star
28

webspace

This is the repo which hosts the front end for people.amfoss.in
JavaScript
276
star
29

Wiki

amFOSS Wiki
Python
272
star
30

tasks

Makefile
7
star