Skip to main content

non-WYSIWYG document generator

Project description

noWord

non-WYSIWYG document generator.

Introduction

The idea behind the project is to provide a very efficient text processing framework for software developers or other IT professionals offering the following features:

  • command line user interface (no GUI) for extrem productivity
  • source files are exclusivly plain text files (git-able, pull-request, etc)
  • strict seperation between content and layout
  • foundation for complexe document generation task (not included in this project)
  • easy indexing of documents in noSql databases

The first two points make it very easy to integrate the noWord processor in any software development environment (IDE, source code, build chain) which makes it very convinent for software developers.

The following illustration outlines the main components of the noWord system.

Back to Top

Input files

doc_info.yaml

This files contains global settings of the document like:

  • doc id, version, author, etc
  • templates
  • processing instructions

Content files

As content file format we chose YAML over json for it's multiline support. The content file is organized in blocks. Each block is a dictionary which should have at least one entry: type. All other entries are block type specific.

- type    : chapter
  title   : Some title

- type    : text
  content : >
    Some multiline text ...
    Another line

- type    : list
  content :
    - Item 1
    - Item 2

Back to Top

Build-in block types

Basic text elements

External assets

Document structure elements

External data processing

Back to Top

Application modules

Block type Plugins

You can define your own block types using the plugin mecanism.

Templates

For maximum flexibility, you can write you own templates using python.

Back to Top

Testing

Functional Testing

For each plugin a functional test was implemented. The following document describes the functional test: tests.md

Back to Top

Developer

Built With / Credits

  • ReportLab - ReportLab is the time-proven, ultra-robust open-source engine for creating complex, data-driven PDF documents and custom vector graphics.

  • Font Awesome - Font Awesome is a scalable vector icons library that can instantly be customized.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

Contributers

  • Benoist Wolleb
  • Sebastien Pasche
  • Cyril Sester
  • Daniel Fernandes
  • David Zéni
  • Cédric Monard

License

This project is licensed under the GPL License - see the LICENSE file for details

Acknowledgments

  • Hat tip to anyone who's code was used
  • Inspiration
  • etc

Back to Top

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

noword-1.2.1.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

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

noword-1.2.1-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file noword-1.2.1.tar.gz.

File metadata

  • Download URL: noword-1.2.1.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for noword-1.2.1.tar.gz
Algorithm Hash digest
SHA256 ae167a22dfb2599751ff08b76ec79b60501ab58ba8ff79671648345e8840e897
MD5 365a0b9305850508e97349698047fe40
BLAKE2b-256 f4d399b2bfb1372c11515fee39121ea386216842dd640e22fa9e151d71c14754

See more details on using hashes here.

File details

Details for the file noword-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: noword-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for noword-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f7eb11857d43397bef607b4a111c6d35d3c31c312fc1efca3399ebed52121e62
MD5 4e713bcfb06e5b9d0207f0ae34b83f41
BLAKE2b-256 ebdd5b94d37530bf699bfe9778fdaae7dd0360de9288427464f4afe047f03a3f

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