Skip to main content

Synamic

Project description

An advanced hybrid (static+dynamic) web application framework, library and tool.

It can be used as:

  • Framework

  • Library

  • Tool

Powerful, Extensible, Dynamic


How To Install

pip install synamic

Creating a Project

Choose or create a directory in which you want to keep your templates, models, contents, static files and other data. Start your command line in the chosen directory or cd into it. Run the following command:

synamic init

It will create the directory and the necessary startup files for you along with a .gitignore.

Directory structure:

  1. contents: primarily for keeping your markdown contents (by default with .md and .markdown extension). All other files will be considered as static files, except for the files that start with a dot (.) or underscore (_). Files named .meta.syd are meta files (primarily for configuration purpose). Instead of putting configurations/fields repeatedly in markdown files you can put them in a .meta.syd file. All the markdown files in the .meta.syd’s directory or any directory below will include fields from it. Meta files in directories below the will be able to override fields from parent metas. You can remark .meta.syd as a compile time dependency.

  2. metas: all the meta folders and files will live inside of this directory. It will contain data, users, markers, models, and menus. More can be added in future.

  3. templates: for storing templates. By default the template engine will be jinja2

  4. settings.syd: this file will hold project/site wide settings. Create settings.private.syd to override settings that you do not want to share with your team or do not want to keep in version control.

  5. sites: Yes, synamic has multi site feature. A site is a complete sandbox that will have different templates, metas, contents, etc. Even it can have sub-sites under it. A site can inherit many things from its parent sites.

If you prefer to work inside the synamic shell, you can start it with the following command.

synamic shell

Building a Project

Run the following command from the project’s root directory.

synamic build

You will get your site(s) build under the _outputs directory. You can also run the same command from synamic shell where you will not need to precede the ‘build’ command with ‘synamic’.

Starting the Development Server

Open your command line in the synamic project directory, start the synamic shell and run the serve command.

serve

To run the server without the synamic shell use the following command.

synamic serve

This will start a development server with which you can preview you work live on the browser. Unlike build this does not generate any output file.

Template Tag: geturl

Argument Format: synamic_scheme://type:value

Example:

{% getc 'url://file:logo.png' %}

{% getc 'url://id:home-en' %}

The maniac behind Synamic is Md. Sabuj Sarker who has one decade+ of experience and expertise in computer programming. Do not hesitate to contact him for hiring him for project management, software development, writing, or training - he will be happy to help you. You can visit his website at www.sabuj.me

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

synamic-0.7.1.dev7.tar.gz (94.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

synamic-0.7.1.dev7-py3-none-any.whl (213.9 kB view details)

Uploaded Python 3

File details

Details for the file synamic-0.7.1.dev7.tar.gz.

File metadata

  • Download URL: synamic-0.7.1.dev7.tar.gz
  • Upload date:
  • Size: 94.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.4

File hashes

Hashes for synamic-0.7.1.dev7.tar.gz
Algorithm Hash digest
SHA256 14a0873cd27c6db33ba176bb1849066fc84e12242bedba691867d2e78a1dc79d
MD5 9c794f4ce0f887622bcc7347511b0ac8
BLAKE2b-256 985899ee23640ed37895baedfb1cc2c1ddf9453f2524b08eec50b1e10429600d

See more details on using hashes here.

File details

Details for the file synamic-0.7.1.dev7-py3-none-any.whl.

File metadata

  • Download URL: synamic-0.7.1.dev7-py3-none-any.whl
  • Upload date:
  • Size: 213.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.4

File hashes

Hashes for synamic-0.7.1.dev7-py3-none-any.whl
Algorithm Hash digest
SHA256 ea269c1d4965b98937cd693251f226cd148bdee7e5b9cae712b4566bf41edc9c
MD5 b74890c7c4132cbe037a08a70726e85d
BLAKE2b-256 b92ea69172d825bd5145c6312f6c53c84c5f332d318a9389f937a4ed04161dc4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page