Coder Social home page Coder Social logo

moonrisesoftwarecalifornia / cosmos.cms Goto Github PK

View Code? Open in Web Editor NEW
7.0 3.0 4.0 27.78 MB

Cosmos CMS.

Home Page: https://cosmos.moonrise.net

License: Apache License 2.0

C# 28.64% JavaScript 20.42% HTML 8.94% CSS 7.67% SCSS 27.01% TypeScript 7.04% Dockerfile 0.04% TSQL 0.24%
cms asp-net-core cloud-native azure aws docker s3-storage azure-storage sql-server cms-framework cdn-support

cosmos.cms's Introduction

Cosmos

IMPORTANT: This repository is being archived as a major new release of Cosmos is now available.

Please visit the new repository.

ubunto build CodeQL NuGet Badge Unit Tests (67)

Deploy to Azure

Quick links: Getting Started | Create Content | Create with VS Code | Technical Documentation

Flexible Design

Cosmos is a lightweight CMS that has a built-in WYSIWYG and Source Code editor, and it also allows you to create single page applications externally with your favorite IDE, and when ready, import them. Cosmos supports your favorite framework such as Angular, jQuery, React, Vue, Google Maps, Map Box, ESRI, Bing Maps ...and others.

See our live framework demos.

Example Use Cases:

  • High performance, light-weight CMS able to sustain large number of users.
  • Host an Angular, jQuery, React or Vue web-app as a "home page" along with other pages with documentation.
  • A dashboard website with graphs, charts, maps along with report pages and documentation.
  • A CMS with an extremely easy HTML editing interface for non-technical users needing to make quick edits.

Cosmos was built by the staff of the California Department of Technology as an open, cloud-first high performance platform built to host websites during times of natural disasters and other emergencies. It was used from 2019 - 2021 for fire response, and in 2020 for COVID response.

The California Department of Technology decided to open source the project at the end of 2021.

Getting Started with Cosmos

In under 15 minutes you can create a Cosmos website in Azure and get started exploring its capabilities.

Here is how:

Create Content

There are three ways to create content that can be hosted on Cosmos:

Upload Assets

Use the file manager to upload one or more files at a time. You can also upload whole folders at once.

Project Status

  • Cosmos CMS began as a project within the State of California's California Department of Technology, Office of Enterprise Technology from 2019 through 2021 and was built as a collaboration between it's DevOps and software engineering teams.
  • Starting in December of 2021 management at the Department of Technology decided to make this project open-source.
  • January 2022 this project officially "opened its doors" for business as an open-source project.
  • In January of 2022 Tek Yantra offered to sponsor this project and become a contributor. Tek Yantra staff have been involved with this project from the begining.
  • Collaboration between this project and staff from the California Department of Technology continues.
  • Product website launched.
  • Now the project is in a phase where we are trying to grow our developer and user community.

Why Cosmos CMS was created

This project began out of a need for a lean, easy to use, high performance Content Management System that has the capacity to handle extremely high number of users and be highly available--capable of hosting a single website from both Azure and AWS with real-time content synchronization between the two.

Cosmos CMS hosted websites built for the State of California's fire response of 2019 through 2021 and COVID 19 response of 2020.

Please see our blog article that describes the unique architecture of this system.

Help contribute

There are a number of ways you can help:

  • Give Cosmos a try with our 10 minute Azure Install.
  • Provide us feedback through our online discussions:
  • Give this project a "Star" or click on "Watch"
  • "Fork" this repository, and help us with code development and/or documentation.

Developing with Cosmos

Would you like to fork one of our repos and contribute? See our contributing guidelines and please see our documentation on how to get started developing with Cosmos.

Cosmos Repos

Three repositories are associated with this project:

  • The Cosmos repository contains the "Editor" and the "Publisher" and all the frameworks common to each.
  • The "Cosmos Publisher" repository contains a stand alone "Publisher" website.
  • Open-source layouts made ready for use with Cosmos CMS.

The publisher repository is a "stock" out of the box Visual Studio application. It is turned into a "Publisher" by adding and configuring the Cosmos Common NuGet package.

Installation

You can deploy Cosmos to Azure by clicking the following button (recommended) or manually install by following the directions below.

Deploy to Azure

This documentation is still under development, so check back for more topics as they become available.

Docker Container Manual Install

cosmos.cms's People

Contributors

dependabot[bot] avatar toiyabe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

cosmos.cms's Issues

Publishing Date/Time when set, seems to display a day later after save.

Describe the bug
When in HTML view, and when "publishing" a draft, the date time set does not seem to be saved correctly.

To Reproduce
Steps to reproduce the behavior:

  1. Edit a new draft.
  2. Click "Draft" and select today at 12 AM
  3. From the menu select "save"
  4. The "Draft" button will now be changed to "Pending" which means it is published in the future.
  5. Click on pending and the date/time will have changed from what was set.
  6. When you go back to versions, it will display the correct time set.

Expected behavior
Expected behavior is to say "published" and save the correct day and time that matches the date/time saved, and what appears in the version list.

LinkedAuthorizationFailed during install

Describe the bug
When using the "Deploy to Azure" button (which launches the ARM template azuredeploy.json), the error appears below during install:

"status": "Failed",
"error": {
"code": "LinkedAuthorizationFailed",
"message": "The client has permission to perform action 'Microsoft.Maintenance/publicMaintenanceConfigurations/read' on scope ...."

Simplify menu

The drop down menu of the Editor is getting long and wieldy.

Simplify the menu, and perhaps add a page with a detailed list of options.

Code Editor does not automatically load code

Describe the bug
When using the code editor either to edit a web page or layout, it does not load the code until one of the tabs is selected.

To Reproduce
Steps to reproduce the behavior:

  1. Go to any page.
  2. Click edit.
  3. Find a version to edit and select code editor.
  4. See that the code area is not loaded with the code.
  5. Click on any tab, it will then load the code content.

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

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.