Manuskript is an open-source tool for writers.

Overview

Manuskript

Manuskript is an open-source tool for writers.

Manuskript runs on GNU/Linux, Mac OS X, and Windows.

Main view

Features

Manuskript provides a rich environment to help writers create their first draft and then further refine and edit their masterpiece.
With Manuskript you can:

Additionally Manuskript can help in many more ways with a spell checker, markdown highlighter, frequency analyzer, and automatic save in open and plain text file format.

Download

Download and install Manuskript today.

HowTo's

See the Wiki for more detailed instructions on how to install and use Manuskript.

Contribute

You can help improve Manuskript by reporting issues, writing wiki documentation, and translating to other languages. See also Manuskript Contribute page.

Manuskript is written in Python3 and PyQt5.

Free Software

Manuskript is Free Software.
You have the freedom to run, copy, distribute, study, change and improve the software.
Manuskript is distributed under the GNU General Public License version 3 or (at your option) any later version.

Comments
  • not working on Mac

    not working on Mac

    Hello, the app is not starting on OS X Yosemite 10.10.5. Here is the log:

    Last login: Wed May 4 11:03:14 on console Remus:~ Remus$ /Users/Remus/Downloads/manuskript/manuskript ; exit; Warning: failed to load translator for locale en_US... Traceback (most recent call last): File "", line 13, in File "manuskript/main.py", line 63, in run File "manuskript/main.py", line 69, in launch File "manuskript/mainWindow.py", line 51, in init File "manuskript/ui/mainWindow.py", line 167, in setupUi File "manuskript/ui/views/textEditView.py", line 79, in init File "enchant/init.py", line 548, in init enchant.errors.Error: No tag specified and default language could not be determined. manuskript returned -1 logout

    [Process completed]

    packaging 
    opened by rem90 47
  • Accentueted characters on linux

    Accentueted characters on linux

    Hi, I'm on manuskript 0.5.0 on Ubuntu 16.04

    whenever I try to write an "ê"(resp. an "â", "ô" or "î") manuskript replace it by "e" (resp. "a","o","i") it's really inconvenient in french

    by the way I can copy-paste those characters even if I can't write it directly

    bug packaging 
    opened by WildCerebrus 42
  • Use QtWebEngine instead of deprecated QtWebView

    Use QtWebEngine instead of deprecated QtWebView

    As mentioned in #54, QtWebKit was deprecated and is now removed from Qt releases. Although there is apparently some effort being made to reinstate it, right now it results in complicated build process to get Manuscript working (see #35). And since it uses QtWebKit only to render HTML and PDF previews, it is fairly easy to rewrite it using QtWebKit's successor: QtWebEngine.

    This PR makes it.

    However, note that I only tested it with HTML preview now (it worked). I need to fix my LaTeX installation to test it with PDFs. Also, any clues on testing would be most welcome.

    With QtWebEngine instead of QtWebKit, it's possible to build Manuscript against standard binary distribution of Qt from Homebrew and I suppose it's also easier on some Linux distributions. I don't have a chance right now to check it on Windows.

    opened by katafrakt 36
  • [MacOS 10.13.3] Crashes after changing smart revision settings.

    [MacOS 10.13.3] Crashes after changing smart revision settings.

    I changed the first revision history thing, 1 per minute for the last 10 minutes to 2 revisions per for the last 10 minutes. I can open the app to the new novel screen, but crashes when i go into settings. Pastebin has both the terminal output, and the crash report:

    https://pastebin.com/MGCufVAs

    invalid 
    opened by ethanbreck 33
  • Track dirty state and have the UI behave accordingly

    Track dirty state and have the UI behave accordingly

    Intending to learn more about the way Manuskript goes about saving the project in order to figure out how to tackle some recent issues, I stumbled into learning that Manuskript likes to save data a whole lot. Too much, in fact. When I close the project with unsaved changes, I expected those changes to not be saved... but they were. Worse, when closing the window with 'quit on save' turned off, the application just closes without any warning of data loss! All of this completely subverts my expectations of how a program using typical file-based operations involving opening, saving and closing files should work!

    There are three more settings that influence when the program saves, and I personally consider them a bit overkill or even detrimental to the stated purpose. What if Manuskript forces a save when nothing was changed and something goes wrong? Saving too much can in fact be dangerous!

    For now, I have left existing functionality as-is, but I would prefer to respect the dirty flag I have introduced in this commit for at least the 'save-on-quit' and 'save every X minutes' features. (The third is smarter and only triggers after noticing changes, so it is less important.)

    Making sure the dirty flag works as expected is the first step in making such changes in the future. (Assuming we can reach some sort of consensus on what the desired behaviour would be.)

    UI-wise, this commit now offers the user the opportunity to save their changes, discard them, or outright cancel their action entirely when performing a destructive action on a dirty project. As of this commit, I have identified two of such scenarios:

    1. closing the project,
    2. closing the window with save-on-quit turned off.

    At this point, I have been using this commit for the past month without spotting any regressions, both while writing and trying to reproduce bug reports.

    Note that I have not added any translations; I initially started doing so for my native language but after seeing that it and other translations were out of date to varying degrees, I figured that the best translations would probably be made by someone who really embraces updating the various translations, and not me trying to squish it into this PR just to be complete. 😄

    opened by worstje 29
  • Adds: document menu (copy, paste, delete, duplicate, split, merge, etc.)

    Adds: document menu (copy, paste, delete, duplicate, split, merge, etc.)

    (from https://github.com/olivierkes/manuskript/issues/200#issuecomment-343529005)

    Another thought is the ability to cut a scene at a selected point and create a new scene containing the text below that point. One of the few functions I do miss from Scrivener. It made the importing of a single file containing everything quite manageable.

    I just added this function to manuskript. It's in the develop branch.

    In the new Documents menu:

    image

    • Split at cursor (CTRL+K) will split the current text at cursor. If there is a selection, it will be used for the title of the newly created item.

    • Split… (CTRL+SHIFT+K) will open a dialog, in which you can chose a "split" mark. The text will be splitted at every occurences. If you call that while having selected multiple items, it will be applied to all. If you call that on a folder, it will be applied to every children.

    image

    Edit: dialog should read "escape sequences". Corrected.

    enhancement 
    opened by olivierkes 29
  • Segmentation fault on import

    Segmentation fault on import

    This happens on SemaphoreCI but I'm also able to reproduce it on my computer. When running pytest -v some tests are passing, but then segmentation fault appears.

    After installing pytest-faulthandler I get this Python backtrace:

    manuskript/tests/ui/importers/test_importers.py::test_loadImportWiget Project tmpzeylgxfp.msk saved.
    Loading: /tmp/tmpjy6jlxeo.msk
    Detected file format version: 1. Zip: False.
    Project /tmp/tmpjy6jlxeo.msk loaded.
    QAbstractItemView::setRootIndex failed : index must be from the currently set model
    QAbstractItemView::setRootIndex failed : index must be from the currently set model
    QAbstractItemView::setRootIndex failed : index must be from the currently set model
    0
    Fatal Python error: Segmentation fault
    
    Current thread 0x00007fb701d13600 (most recent call first):
      File "/home/katafrakt/dev/github/manuskript/manuskript/ui/importers/importer.py", line 221 in setGroupWidget
      File "/home/katafrakt/dev/github/manuskript/manuskript/ui/importers/importer.py", line 202 in updateSettings
      File "/home/katafrakt/dev/github/manuskript/manuskript/ui/importers/importer.py", line 59 in __init__
      File "/home/katafrakt/dev/github/manuskript/manuskript/mainWindow.py", line 1473 in doImport
      File "/home/katafrakt/dev/github/manuskript/manuskript/tests/ui/importers/test_importers.py", line 13 in test_loadImportWiget
      File "/usr/lib/python3.7/site-packages/_pytest/python.py", line 166 in pytest_pyfunc_call
      File "/usr/lib/python3.7/site-packages/pluggy/callers.py", line 187 in _multicall
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 61 in <lambda>
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 67 in _hookexec
      File "/usr/lib/python3.7/site-packages/pluggy/hooks.py", line 284 in __call__
      File "/usr/lib/python3.7/site-packages/_pytest/python.py", line 1435 in runtest
      File "/usr/lib/python3.7/site-packages/_pytest/runner.py", line 116 in pytest_runtest_call
      File "/usr/lib/python3.7/site-packages/pluggy/callers.py", line 187 in _multicall
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 61 in <lambda>
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 67 in _hookexec
      File "/usr/lib/python3.7/site-packages/pluggy/hooks.py", line 284 in __call__
      File "/usr/lib/python3.7/site-packages/_pytest/runner.py", line 188 in <lambda>
      File "/usr/lib/python3.7/site-packages/_pytest/runner.py", line 206 in __init__
      File "/usr/lib/python3.7/site-packages/_pytest/runner.py", line 190 in call_runtest_hook
      File "/usr/lib/python3.7/site-packages/_pytest/runner.py", line 166 in call_and_report
      File "/usr/lib/python3.7/site-packages/_pytest/runner.py", line 86 in runtestprotocol
      File "/usr/lib/python3.7/site-packages/_pytest/runner.py", line 71 in pytest_runtest_protocol
      File "/usr/lib/python3.7/site-packages/pluggy/callers.py", line 187 in _multicall
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 61 in <lambda>
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 67 in _hookexec
      File "/usr/lib/python3.7/site-packages/pluggy/hooks.py", line 284 in __call__
      File "/usr/lib/python3.7/site-packages/_pytest/main.py", line 242 in pytest_runtestloop
      File "/usr/lib/python3.7/site-packages/pluggy/callers.py", line 187 in _multicall
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 61 in <lambda>
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 67 in _hookexec
      File "/usr/lib/python3.7/site-packages/pluggy/hooks.py", line 284 in __call__
      File "/usr/lib/python3.7/site-packages/_pytest/main.py", line 221 in _main
      File "/usr/lib/python3.7/site-packages/_pytest/main.py", line 181 in wrap_session
      File "/usr/lib/python3.7/site-packages/_pytest/main.py", line 214 in pytest_cmdline_main
      File "/usr/lib/python3.7/site-packages/pluggy/callers.py", line 187 in _multicall
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 61 in <lambda>
      File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 67 in _hookexec
      File "/usr/lib/python3.7/site-packages/pluggy/hooks.py", line 284 in __call__
      File "/usr/lib/python3.7/site-packages/_pytest/config/__init__.py", line 68 in main
      File "/usr/bin/pytest", line 11 in <module>
    [1]    11359 segmentation fault (core dumped)  pytest -vs
    

    I tried playing around with gdb and got this trace as well (but I was unable to go any further):

    Thread 1 "python" received signal SIGSEGV, Segmentation fault.
    0x00007ffff5138285 in ?? () from /usr/lib/libQt5Widgets.so.5
    (gdb) bt
    #0  0x00007ffff5138285 in  () at /usr/lib/libQt5Widgets.so.5
    #1  0x00007ffff51383a4 in  () at /usr/lib/libQt5Widgets.so.5
    #2  0x00007ffff50c19a9 in QWidgetPrivate::inheritStyle() () at /usr/lib/libQt5Widgets.so.5
    #3  0x00007ffff50c16cd in QWidgetPrivate::setStyle_helper(QStyle*, bool, bool) () at /usr/lib/libQt5Widgets.so.5
    #4  0x00007ffff50c1a10 in QWidgetPrivate::inheritStyle() () at /usr/lib/libQt5Widgets.so.5
    #5  0x00007ffff50d2a5e in QWidget::setParent(QWidget*, QFlags<Qt::WindowType>) () at /usr/lib/libQt5Widgets.so.5
    #6  0x00007ffff50af03f in QLayout::addChildWidget(QWidget*) () at /usr/lib/libQt5Widgets.so.5
    #7  0x00007ffff50a6a7c in QBoxLayout::insertWidget(int, QWidget*, int, QFlags<Qt::AlignmentFlag>) () at /usr/lib/libQt5Widgets.so.5
    #8  0x00007ffff571721c in  () at /usr/lib/python3.7/site-packages/PyQt5/QtWidgets.so
    #9  0x00007ffff7b9c304 in _PyMethodDef_RawFastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    #10 0x00007ffff7b9c461 in _PyCFunction_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    #11 0x00007ffff7c0c209 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #12 0x00007ffff7b9ba3b in _PyFunction_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    #13 0x00007ffff7c0bbf4 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #14 0x00007ffff7b9ba3b in _PyFunction_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    #15 0x00007ffff7c0bbf4 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #16 0x00007ffff7b55879 in _PyEval_EvalCodeWithName () at /usr/lib/libpython3.7m.so.1.0
    #17 0x00007ffff7b56adc in _PyFunction_FastCallDict () at /usr/lib/libpython3.7m.so.1.0
    #18 0x00007ffff7b66028 in _PyObject_Call_Prepend () at /usr/lib/libpython3.7m.so.1.0
    #19 0x00007ffff7bb4303 in  () at /usr/lib/libpython3.7m.so.1.0
    #20 0x00007ffff7bc806c in _PyObject_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    #21 0x00007ffff7c0cd35 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #22 0x00007ffff7b9ba3b in _PyFunction_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    #23 0x00007ffff7c0bbf4 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #24 0x00007ffff7b55879 in _PyEval_EvalCodeWithName () at /usr/lib/libpython3.7m.so.1.0
    #25 0x00007ffff7b56adc in _PyFunction_FastCallDict () at /usr/lib/libpython3.7m.so.1.0
    #26 0x00007ffff7c08cf3 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #27 0x00007ffff7b568fb in _PyFunction_FastCallDict () at /usr/lib/libpython3.7m.so.1.0
    #28 0x00007ffff7c08cf3 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #29 0x00007ffff7b55879 in _PyEval_EvalCodeWithName () at /usr/lib/libpython3.7m.so.1.0
    #30 0x00007ffff7b9bbe2 in _PyFunction_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    #31 0x00007ffff7c08435 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #32 0x00007ffff7b55879 in _PyEval_EvalCodeWithName () at /usr/lib/libpython3.7m.so.1.0
    #33 0x00007ffff7b9bbe2 in _PyFunction_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    #34 0x00007ffff7c0bbf4 in _PyEval_EvalFrameDefault () at /usr/lib/libpython3.7m.so.1.0
    #35 0x00007ffff7b9ba3b in _PyFunction_FastCallKeywords () at /usr/lib/libpython3.7m.so.1.0
    --Type <RET> for more, q to quit, c to continue without paging--q
    

    Unfortunately, the very same thing happens when I open up a project and do File->Import (it crashes immediately).

    Python 3.7.1 PyQt5 5.11.3-1 (from pacman) SIP 4.19.13-1 (from pacman)

    bug 
    opened by katafrakt 27
  • Unabe to launch in Linux Mint 18.1 Cinnamon 64-bit

    Unabe to launch in Linux Mint 18.1 Cinnamon 64-bit

    Ever since I upgraded from 0.3.0 to 0.4.0, I've been unable to run Manuskript.

    Running by double-clicking or from a shortcut gives nothing. Running from the Terminal gives this:

    ~/Apps/Manuskript $ ./manuskript
    Traceback (most recent call last):
      File "manuskript", line 11, in <module>
      File "/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyimod03_importers.py", line 389, in load_module
      File "manuskript/main.py", line 8, in <module>
      File "/usr/local/lib/python3.5/dist-packages/PyInstaller/loader/pyimod03_importers.py", line 573, in load_module
    ImportError: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1: undefined symbol: drmGetDevices2
    Failed to execute script manuskript
    

    All the listed required dependencies are installed and up to date.

    invalid packaging 
    opened by Erkhyan 27
  • Refactor spellchecker code and add other spellcheck library support

    Refactor spellchecker code and add other spellcheck library support

    This is a rather big change, but should be easy to review one commit at a time. It will add an abstraction for the spellchecker then add support for pyspellchecker. Only 'bug'/issue I have is if I run 32 bit version and select a PyEnchant dictionary, then run the 64 bit version, then spellchecking doesn't work because my settings have stored "PyEnchant:en_US" as the chosen dictionary, so I'd have to reselect the pyspellchecker dictionary for it to work again.. this could happen to a user and they'd be lost as to why it's not working. Another issue that would need to be discussed is whether we should have the custom dictionary entries stored in the project file or not. It makes sense if you add to dictionary weird character names or fantasy world names/concepts, but if you're just fixing the dictionary to add words you often use across projects, it could be annoying. Anyway, needs to be discussed.

    enhancement 
    opened by kakaroto 24
  • Manuskript fails to run in Ubuntu 14.04

    Manuskript fails to run in Ubuntu 14.04

    From @gedakc in https://github.com/olivierkes/manuskript/issues/207#issuecomment-346105225:

    Manuskript doesn't even run from source on 64-bit Ubuntu 14.04! The messages are as follows:

    [email protected]:~/manuskript-0.5.0$ bin/manuskript 
    Debug: Web rendering engine used: QWebView
    Running manuskript version 0.5.0.
    Note: No translator found or loaded for locale en_CA.
    Traceback (most recent call last):
      File "bin/manuskript", line 13, in <module>
        main.run()
      File "/home/user/manuskript-0.5.0/bin/../manuskript/main.py", line 64, in run
        launch()
      File "/home/user/manuskript-0.5.0/bin/../manuskript/main.py", line 70, in launch
        main = MainWindow()
      File "/home/user/manuskript-0.5.0/bin/../manuskript/mainWindow.py", line 63, in __init__
        self.welcome.updateValues()
      File "/home/user/manuskript-0.5.0/bin/../manuskript/ui/welcome.py", line 47, in updateValues
        autoLoad, last = self.getAutoLoadValues()
      File "/home/user/manuskript-0.5.0/bin/../manuskript/ui/welcome.py", line 69, in getAutoLoadValues
        autoLoad = sttgns.value("autoLoad", type=bool)
    TypeError: unable to convert a QVariant of type 0 to a QMetaType of type 1
    [email protected]:~/manuskript-0.5.0$ 
    

    Strangely all three methods (source, PyInstaller, deb) run correctly on 64-bit Xubuntu 14.04.

    EDIT: I'm going to try updating my Ubuntu 14.04 to see if it is a problem that is fixed in a more recent system package.

    EDIT 2: Even with an up-to-date 64-bit Ubuntu 14.04, it fails to run manuskript from any of the three methods (source, PyInstaller, deb). I wonder what is causing the issue with Ubuntu 14.04 but not Xubuntu 14.04.


    Can you please:

    1. Check in the manuskript settings file what the autoLoad value is (probably in ~/.config/manuskript/manuskript.conf)
    2. Remove the the config file and run manuskript again

    Strangely there is no ~/.config/manuskript/manuskript.conf file or even the ~/.config/manuskript/ folder.

    bug 
    opened by olivierkes 24
  • Compile Issue for Pandoc Formats - pandoc.exe incorrect

    Compile Issue for Pandoc Formats - pandoc.exe incorrect

    Hello,

    I've been using Manuskript on Windows 10. Whenever try to compile document as Pandoc formats then program shuts down immediately.

    Can not compile document cause of that issue.

    Pandoc version that I use is 1.6.0.2( After submission I've updated Pandoc to 2.0.1, still issue is there) Tried Manuskript 0.30 to 0.50 same problem on them No any error message in console, but unrelated translation message for my PC's language

    bug 
    opened by linuxtopia 24
  • 0.14 won't open

    0.14 won't open

    "Traceback (most recent call last): File "/usr/share/manuskript/manuskript/ui/welcome.py", line 88, in showEvent self.mw.loadProject(last) File "/usr/share/manuskript/manuskript/mainWindow.py", line 614, in loadProject self.loadDatas(project) File "/usr/share/manuskript/manuskript/mainWindow.py", line 900, in loadDatas errors = loadSave.loadProject(project) File "/usr/share/manuskript/manuskript/loadSave.py", line 60, in loadProject version = int(f.read()) File "/usr/lib/python3.10/codecs.py", line 322, in decode (result, consumed) = self._buffer_decode(data, self.errors, final) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa8 in position 10: invalid start byte"

    Here's the traceback I get when I try to start Manuskript after unpacking 0-14.0-1.deb

    bug 
    opened by ATL-KNH 0
  • Feature Request: Adding remote Server Language Tool To Manuskript (And other enchancements)

    Feature Request: Adding remote Server Language Tool To Manuskript (And other enchancements)

    So @Mannshoch opened issue #1102 because he wanted to be able to set Manuskript to his local Language Tool Server. Manuskript can't do that however. I added how to install language tool it in the wiki to fulfill the issue, but I decided to also open an issue so the developers can easily keep track of his feature request.

    It's a good idea, it'd probably the ability to disable rules like the LibreOffice extension can. But I'd like that feature to the current manuskript as well. Some of the "Errors" it finds in my stories are only if you're writing research papers. It may also speed up the checking time because even though spell check lags at big files. I know all spell checks does and that's something that can be cleaned up but this could help.

    According to the pypi site here: https://pypi.org/project/language-tool-python/ you can connect to remote servers (and even to the official language tool one. I haven't looked at the code but I imagine at least part of it could be done easily it you knew Qt, if someone wants to work on it its fine but this may be something that could should until a spell check rewrite happens be it during the Gtk rewrite or not because the waiting time is kind of ridiculous.

    I think ideally we should have options to connect to the official language tool server, maybe the premium version also, but also the custom server and the way Manuskript does it now also. Also for all three there should be the ability to disable rules and access any other language tool settings.

    enhancement 
    opened by TheShadowOfHassen 3
  • Languagetool: Add how-to to wiki

    Languagetool: Add how-to to wiki

    As far I see in the Manuskript menu. Langu8agetool is supported. I have it installed on my desktop and Firefox and thunderbird access it over 127.0.0.1 How could I connect manuscript to my local server?

    Please enhance the Wiki entrry for languages: https://github.com/olivierkes/manuskript/wiki/Adding-a-Spellcheck-Language-Dictionary-to-Manuskript

    discussion 
    opened by Mannshoch 5
  • Feature Request: Tree view of one line summaries for scenes/chapters

    Feature Request: Tree view of one line summaries for scenes/chapters

    Sorry if this has been requested. I did not see it.

    Anyway, it would be helpful if at a glance I can see all the one line summaries. The index cards are good but not what I would prefer.

    Thank you.

    enhancement 
    opened by masqcrew 1
  • Feature Request: Search Enhancements

    Feature Request: Search Enhancements

    Please, please, please can we have replace capabilities with Search?

    And while I'm asking for the sun, moon and stars, could we also have local search/replace (in the document that's open) with ctrl-f (in Linux) and global search/replace in ctrl-shift-f (in linux) the way Visual Studio Code distinguishes the two?

    This should be available in regex, but I've had no success making it go.

    enhancement 
    opened by jrstrick 4
Releases(0.14.0)
A Django admin theme using Twitter Bootstrap. It doesn't need any kind of modification on your side, just add it to the installed apps.

django-admin-bootstrapped A Django admin theme using Bootstrap. It doesn't need any kind of modification on your side, just add it to the installed ap

1.6k Dec 28, 2022
AaPanel - Simple but Powerful web-based Control Panel

Introduction: aaPanel is the International version for BAOTA panel(www.bt.cn) There have millions servers had installed BAOTA panel since 2014 in Chin

bt.cn 1.4k Jan 09, 2023
Tornadmin is an admin site generation framework for Tornado web server.

Tornadmin is an admin site generation framework for Tornado web server.

Bharat Chauhan 0 Jan 10, 2022
WordPress look and feel for Django administration panel

Django WP Admin WordPress look and feel for Django administration panel. Features WordPress look and feel New styles for selector, calendar and timepi

Maciej Marczewski 266 Nov 21, 2022
PyMMO is a Python-based MMO game framework using sockets and PyGame.

PyMMO is a Python framework/template of a MMO game built using PyGame on top of Python's built-in socket module.

Luis Souto Maior 61 Dec 18, 2022
A jazzy skin for the Django Admin-Interface (official repository).

Django Grappelli A jazzy skin for the Django admin interface. Grappelli is a grid-based alternative/extension to the Django administration interface.

Patrick Kranzlmueller 3.4k Dec 31, 2022
Python code for "Machine learning: a probabilistic perspective" (2nd edition)

Python code for "Machine learning: a probabilistic perspective" (2nd edition)

Probabilistic machine learning 5.3k Dec 31, 2022
Python Crypto Bot

Python Crypto Bot

Michael Whittle 1.6k Jan 06, 2023
A Django admin theme using Twitter Bootstrap. It doesn't need any kind of modification on your side, just add it to the installed apps.

django-admin-bootstrapped A Django admin theme using Bootstrap. It doesn't need any kind of modification on your side, just add it to the installed ap

1.6k Dec 28, 2022
xarray: N-D labeled arrays and datasets

xarray is an open source project and Python package that makes working with labelled multi-dimensional arrays simple, efficient, and fun!

Python for Data 2.8k Dec 29, 2022
Drop-in replacement of Django admin comes with lots of goodies, fully extensible with plugin support, pretty UI based on Twitter Bootstrap.

Xadmin Drop-in replacement of Django admin comes with lots of goodies, fully extensible with plugin support, pretty UI based on Twitter Bootstrap. Liv

差沙 4.7k Dec 31, 2022
Freqtrade is a free and open source crypto trading bot written in Python

Freqtrade is a free and open source crypto trading bot written in Python. It is designed to support all major exchanges and be controlled via Telegram. It contains backtesting, plotting and money man

20.2k Jan 02, 2023
Visually distinguish environments in Django Admin

django-admin-env-notice Visually distinguish environments in Django Admin. Based on great advice from post: 5 ways to make Django Admin safer by hakib

Yuri Shikanov 258 Nov 30, 2022
Lazymux is a tool installer that is specially made for termux user which provides a lot of tool mainly used tools in termux and its easy to use

Lazymux is a tool installer that is specially made for termux user which provides a lot of tool mainly used tools in termux and its easy to use, Lazymux install any of the given tools provided by it

DedSecTL 1.8k Jan 09, 2023
Passhunt is a simple tool for searching of default credentials for network devices, web applications and more. Search through 523 vendors and their 2084 default passwords.

Passhunt is a simple tool for searching of default credentials for network devices, web applications and more. Search through 523 vendors and their 2084 default passwords.

Viral Maniar 1.1k Dec 31, 2022
django-admin fixture generator command

Mockango for short mockango is django fixture generator command which help you have data without pain for test development requirements pip install dj

Ilia Rastkhadiv 14 Oct 29, 2022
Awesome Video Datasets

Awesome Video Datasets

Yunhua Zhang 462 Jan 02, 2023
Responsive Theme for Django Admin With Sidebar Menu

Responsive Django Admin If you're looking for a version compatible with Django 1.8 just install 0.3.7.1. Features Responsive Sidebar Menu Easy install

Douglas Miranda 852 Dec 02, 2022
A high-level app and dashboarding solution for Python

Panel provides tools for easily composing widgets, plots, tables, and other viewable objects and controls into custom analysis tools, apps, and dashboards.

HoloViz 2.5k Jan 03, 2023
Extendable, adaptable rewrite of django.contrib.admin

django-admin2 One of the most useful parts of django.contrib.admin is the ability to configure various views that touch and alter data. django-admin2

Jazzband 1.2k Dec 29, 2022