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.0.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.0-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: noword-1.2.0.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.0.tar.gz
Algorithm Hash digest
SHA256 9d3108b6230107603d125fb53a9214b27de5d8c5762cfc6e719d2fd9c778b7bb
MD5 143d913012bc02036c96e48641375f86
BLAKE2b-256 3454c7b7a2a57ad04dea20a3e4fd8f960326292b6ce967f097c9099258e5f2bd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: noword-1.2.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 767b90603751792143d0069aa94cf1a607248bdee487dd4bbab9fb8e6d7aaa37
MD5 1051a3d15f2d773ebb8c76d85be1e79d
BLAKE2b-256 bdcae1412991d28c58b5aa0726f6d46d2a7e00300ef3fd2cb119a1c7f7aa315a

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