{"id":27004471,"url":"https://github.com/tacc/core-cms","last_synced_at":"2026-05-20T07:14:38.435Z","repository":{"id":37460553,"uuid":"320077820","full_name":"TACC/Core-CMS","owner":"TACC","description":"The Core CMS codebase used by TACC Portals.","archived":false,"fork":false,"pushed_at":"2026-03-25T23:27:55.000Z","size":26536,"stargazers_count":2,"open_issues_count":41,"forks_count":2,"subscribers_count":14,"default_branch":"main","last_synced_at":"2026-03-25T23:29:24.173Z","etag":null,"topics":["django-cms","tacc"],"latest_commit_sha":null,"homepage":"https://cep.tacc.utexas.edu","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TACC.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2020-12-09T20:57:38.000Z","updated_at":"2026-03-18T21:43:42.000Z","dependencies_parsed_at":"2026-02-13T05:25:43.894Z","dependency_job_id":null,"html_url":"https://github.com/TACC/Core-CMS","commit_stats":null,"previous_names":[],"tags_count":207,"template":false,"template_full_name":null,"purl":"pkg:github/TACC/Core-CMS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCore-CMS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCore-CMS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCore-CMS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCore-CMS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TACC","download_url":"https://codeload.github.com/TACC/Core-CMS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCore-CMS/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31290615,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django-cms","tacc"],"created_at":"2025-04-04T06:16:55.084Z","updated_at":"2026-04-01T17:49:06.871Z","avatar_url":"https://github.com/TACC.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TACC Core CMS\n\nhttps://cep.tacc.utexas.edu/\n\nThe base CMS code for TACC WMA Workspace Portals \u0026 Websites\n\n## Table of Contents\n\n- [Related Repositories](#related-repositories)\n- [Project Architecture](#project-architecture)\n- [Prerequisites](#prerequisites)\n- [Getting Started](#getting-started)\n- [Update Project](#update-project)\n- [Manage Dependencies](#manage-dependencies)\n- [Develop Project](#develop-project)\n  - [Develop a Custom Project](#develop-a-custom-project)\n  - [Develop a Custom App/Plugin](#develop-a-custom-appplugin)\n- [Test Project](#test-project)\n- [Debug Project](#debug-project)\n- [Build \u0026 Deploy Project](#build--deploy-project)\n- [Contributing](#contributing)\n- [Resources](#resources)\n\n## Related Repositories\n\n- [Camino], a Docker container-based deployment scheme\n- [Core Portal], the base Portal code for TACC WMA CMS Websites\n- [Core Styles], the shared UI pattern code for TACC WMA CMS Websites\n- [Core CMS Template], a template for creating new TACC WMA CMS projects\n- [Core CMS Custom], the new solution for extensions of the [Core CMS] project\n- [Core Portal Deployments], private repository that facilitates deployments of [Core Portal] images via [Camino] and Jenkins\n\n## Project Architecture\n\n| directory | contents |\n| - | - |\n| `apps` | additional Django applications |\n| `bin` | scripts e.g. build CSS |\n| `taccsite_cms` | customize \u0026 configure [Django CMS] |\n\n## Prerequisites\n\n* [Docker]\n  * Docker Engine ≥ v20\n  * [Docker Compose]\n\n\u003e **Important**\n\u003e We recommend you install the Docker Desktop application. Alternatively, you may install both Docker Engine and Docker Compose.\n\n## Getting Started\n\nHow to set up a new local CMS instance.\n\n\u003e **Important**\n\u003e To develop a new or existing **custom** CMS website for a TACC client, do **not** clone this repository. Instead, read [Develop a Custom Project]. To develop on the Core CMS (upon which our other CMS are built) continute reading.\n\n### Quick Setup\n\n0. Enter CMS project:\n    ```sh\n    cd cms\n    ```\n1. (optional) To remove previous setup **entirely**:\n    ```sh\n    make clean\n    ```\n2. Run the setup script:\n    ```sh\n    make setup\n    ```\n    You will be prompted for information.\n\n    \u003e To set the superuser password non-interactively:\n    \u003e ```sh\n    \u003e DJANGO_SUPERUSER_PASSWORD=yourpass make setup\n    \u003e ```\n\n3. [Add Content](#add-content).\n\n### Manual Setup\n\n\u003e [!NOTE]\n\u003e If [Quick Start](#quick-start) process fails, report the error to your team, and follow these steps for now.\n\n1. Configure [Django] Application:\n\n    Create a `taccsite_cms/settings/*.py` for every `taccsite_cms/settings/*.example.py`, e.g.\n\n    ```sh\n    cp taccsite_cms/settings/settings_custom.example.py taccsite_cms/settings/settings_custom.py\n    cp taccsite_cms/settings/secrets.example.py taccsite_cms/settings/secrets.py\n    cp taccsite_cms/settings/settings_local.example.py taccsite_cms/settings/settings_local.py\n    ```\n\n2. Start [Docker] Containers:\n\n    ```sh\n    make start\n    ```\n\n    \u003e **Note**\n    \u003e This will make the terminal window busy. To run commands after this, **either** open a new terminal window **or** run `make start ARGS=\"--detach\"` instead.\n\n3. Build CSS:\n\n    ```sh\n    docker run --rm -v \"$(pwd):/code\" -w /code node:18 sh -c \"npm ci \u0026\u0026 npm run build\"\n    ```\n\n    \u003e **Note**\n    \u003e If you will develop thus rebuild stylesheets often, use a local Node installation and run `npm ci` once, then `npm run build` as needed.\n\n4. Prepare [Django] Application:\n\n    ```sh\n    docker exec -it core_cms /bin/bash\n    # This opens a command prompt within the container\n    ```\n\n    (Run these commands within the container.)\n\n    ```sh\n    python manage.py migrate\n    python manage.py createsuperuser\n    # To use default \"Username\" and skip \"Email address\", press Enter at both prompts.\n    # At \"Password\" prompts, you may use an easy-to-remember password.\n    python manage.py collectstatic --no-input\n\n    ```\n\n5. [Add Content](#add-content).\n\n#### Add Content\n\n1. Open http://localhost:8000/.\n2. Login with the credentials you defined in step 2.\n3. Create one CMS page.\\\n    (With \"New page\" highlighted, click \"Next\" button.)\n    - This page will automatically be your local homepage.\n\n\u003e **Important**\n\u003e A local machine CMS will be empty. It will **not** have content from staging **nor** production. If you need that, follow and adapt instructions to [replicate a CMS database](https://tacc-main.atlassian.net/wiki/x/GwBJAg). This requires high-level server access or somone to give you a copy of the content.\n\n\u003e **Note**\n\u003e A local machine CMS does **not** include **nor** integrate with an instance of [Core Portal]. To attempt to do that, follow [How to Use a Custom Docker Compose File](https://github.com/TACC/Core-CMS/wiki/How-to-Use-a-Custom-Docker-Compose-File) and [Locally Develop CMS Portal Docs](https://github.com/TACC/Core-CMS/wiki/Locally-Develop-CMS---Portal---Docs). **Help welcome.**\n\n## Update Project\n\nTo update an existing CMS instance.\n\n### New Major Version (or v3.12)\n\nRead [Upgrade Project] for developer instructions.\n\n### New Minor or Patch Version (or Branch)\n\n```sh\nmake stop\nmake build\nmake start\n```\n\nTo only update as necessary, or update since uncommon changes, read [Command Sequences](docs/command-sequences.md).\n\n## Manage Dependencies\n\nRead [Manage Dependencies](docs/manage-dependencies.md).\n\n## Develop Project\n\nRead [Django CMS User Guide] for CMS user instructions.\n\nRead [Develop Project] for developer instructions.\n\n### Develop a Custom Project\n\nTo develop a new or existing custom CMS website for a client, read [Develop a Custom Project].\n\n### Develop a Custom App/Plugin\n\nTo develop a new or existing Django CMS app or plugin for a client, read [Develop a Custom App/Plugin].\n\n## Test Project\n\nRead [Testing] for miscellaneous workflows.\n\n## Debug Project\n\nRead [Debug Project] for miscellaneous tips.\n\n## Build \u0026 Deploy Project\n\nFollow \"Core-CMS\" section of [How To Build \u0026 Deploy][Build \u0026 Deploy Project].\n\n## Contributing\n\nTo contribute, first read [How to Contribute][Contributing].\n\n## Resources\n\n### Commands\n\n| command | reference |\n| - | - |\n| `docker exec -it core_cms /bin/bash` | [docker](https://docs.docker.com/engine/reference/commandline/exec/#run-docker-exec-on-a-running-container)\n| `python manage.py migrate` | [django cms](https://docs.django-cms.org/en/release-3.8.x/how_to/install.html#database-tables), [django](https://docs.djangoproject.com/en/3.2/topics/migrations/)\n| `python manage.py collectstatic` | [django](https://docs.djangoproject.com/en/3.2/howto/static-files/)\n| `python manage.py createsuperuser` | [django cms](https://docs.django-cms.org/en/release-3.8.x/how_to/install.html#admin-user), [django](https://docs.djangoproject.com/en/3.2/ref/django-admin/#createsuperuser)\n\n\u003c!-- Link Aliases --\u003e\n\n[Camino]: https://github.com/TACC/Camino\n[Core CMS]: https://github.com/TACC/Core-CMS\n[Core Styles]: https://github.com/TACC/Core-Styles\n[Core CMS Template]: https://github.com/TACC/Core-CMS-Template\n[Core CMS Custom]: https://github.com/TACC/Core-CMS-Custom\n[Core Portal]: https://github.com/TACC/Core-Portal\n[Core Portal Deployments]: https://github.com/TACC/Core-Portal-Deployments\n\n[Git Submodules]: https://git-scm.com/book/en/v2/Git-Tools-Submodules\n\n[Docker]: https://docs.docker.com/get-docker/\n[Docker Compose]: https://docs.docker.com/compose/install/\n\n[Django]: https://www.djangoproject.com/\n[Django CMS]: https://www.django-cms.org/\n[Django CMS User Guide]: https://tacc-main.atlassian.net/wiki/x/phdv\n\n[Build \u0026 Deploy Project]: https://tacc-main.atlassian.net/wiki/x/2AVv\n\n[Develop a Custom Project]: ./docs/develop-custom-project.md\n[Develop a Custom App/Plugin]: ./docs/develop-custom-app.md\n[Develop Project]: ./docs/develop-project.md\n[Manage Dependencies]: ./docs/manage-dependencies.md\n[Upgrade Project]: ./docs/upgrade-project.md\n[Debug Project]: ./docs/debug-project.md\n[Testing]: ./TESTING.md\n[Contributing]: ./CONTRIBUTING.md\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftacc%2Fcore-cms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftacc%2Fcore-cms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftacc%2Fcore-cms/lists"}