Skip to content

A bespoke CMS for the Landscape Architecture Film Series website

License

Notifications You must be signed in to change notification settings

ggeerraarrdd/lafs-cms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LAFSCMS

A bespoke CMS for the Landscape Architecture Film Series website

Description

Note

ALL CONTENTS IN THIS REPO ARE FOR EDUCATIONAL PURPOSES ONLY.

LAFSCMS is the companion Content Management System (CMS) for the Landscape Architecture Film Series website. Currently in alpha, the plan is to merge the beta version with the film series repo.

Just like any real-world organization, student-run organizations such as a film series experience knowledge loss when their members graduate. Without a knowledge transfer process, this loss can lead to technical resources being underutilized or becoming inactive. While alternative resources and processes may exist, they either need to be created from scratch, requiring significant time and resources, or are imperfect substitutes. If existing resources work perfectly fine, why go through all that effort?

LAFSCMS was developed to address this issue of knowledge loss by providing a CMS with a user-friendly web interface to manage content and users efficiently.

LAFSCMS

More screenshots below.

Table of Contents

Features

  • Content Management

    • Complete film series lifecycle handling (Create, Edit, Publish, Unpublish)
    • Flexible schedule management tools
    • Integrated media asset handling
  • Security

    • Secure authentication with role-based controls (Admin and Curator roles)
    • Basic user privilege management
    • Baseline database security implementation
  • Database Features

    • Historical data preservation
    • Searchable archive
  • Interface

    • Instant content synchronization
    • Multi-user collaboration support

Project Structure

lafs-cms/
│
├── app/
│   │
│   ├── blueprints/
│   │   │
│   │   ├── cms/
│   │   │   ├── __init__.py
│   │   │   ├── routes.py
│   │   │   ├── static/
│   │   │   └── templates/
│   │   │
│   │   └── main/
│   │       ├── __init__.py
│   │       ├── routes.py
│   │       ├── static/
│   │       └── templates/
│   │
│   ├── config/
│   │   └── __init__.py
│   │
│   ├── crud/
│   │   └── __init__.py
│   │
│   ├── data/
│   │   └── lafs.db
│   │
│   ├── helpers/
│   │   └── __init__.py
│   │
│   └── app.py
│
├── docs/
├── .gitignore
├── LICENSE
├── README.md
└── requirements.txt

Prerequisites

  • TBD

Getting Started

Dependencies

  • See requirements.txt

Installation

  1. Clone the repository:

    git clone https://github.com/ggeerraarrdd/lafs-cms.git
  2. Navigate into the project directory:

    cd lafs-cms # For example
  3. Create and activate a virtual environment:

    python -m venv venv
    source venv/bin/activate  # On Windows use `venv\Scripts\activate`
  4. Install the dependencies:

    pip install -r requirements.txt
  5. Create an .env file and set the environment variables:

    Create a file named .env in the app directory of the project and add the following variables:

    SECRET_KEY=your_secret_key
    MAP_API_KEY=your_map_api_key
    DATABASE_NAME="lafs.db"

    Replace your_secret_key (see #6 below) and your_map_api_key (see # 7 below) with your actual secret key and API key.

  6. Notes on Flask Secret Keys:

    • TBD
  7. Notes on Google Maps API Keys:

    • TBD

Configuration

  • TBD

Usage

  1. Go into the app directory and run the command:

    flask run
  2. Open the film series website:

    Copy and open the URL displayed after 'Running on' in the terminal.

  3. Access the CMS:

    Add /cms at the end of the URL.

Author(s)

Version History

Release Notes

Initial Release

  • TBD

Future Work

Development of core features is ongoing.

License

Contributing

  • TBD

Acknowledgments

  • Notion AI

Screenshots

LAFSCMS LAFSCMS LAFSCMS LAFSCMS LAFSCMS LAFSCMS

Frontispiece

  • TBD