Skip to content

C0m3b4ck/BookwormPascal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🇵🇱🇵🇱🇵🇱🇵🇱🇵🇱POLSKA WERSJA🇵🇱🇵🇱🇵🇱🇵🇱🇵🇱🇵🇱
GitHub All Releases
🇪🇺🇪🇺🇪🇺Made in Europe🇪🇺🇪🇺🇪🇺
The program logo

BookwormPascal

Version of the library management program Bookworm but in Pascal.
For the still actively maintained Visual Basic 6 version, visit here.
For the unsupported, broken Python version, visit here.

Help!!! Which one do I download????? 🤔🤔🤔

Don't worry, I do make a lot of different builds and it's easy to get confused!


💼 Portable - a single compressed folder, just download, extract and run BookwormPascal.exe


📦 Installer - a single .exe file. When you run, it shows a menu, including installation location etc.

Before downloading, check your architecture:

x64_8-11_MODERN - supports Windows 8 x64, Windows 8.1 x64, Windows 10 x64, Windows 11 x64. If you do not know which Windows version you are using, use this build.

x64_Linux - supports x64 versions of Linux (definitely Ubuntu and Debian)

x32_Linux - supports x32 versions of Linux (definitely Ubuntu and Debian)

x86_XP-Vista-7 - supports Windows XP x86, Windows Vista x86, Windows 7 x86.

x64_XP-Vista-7 - supports Windows XP x64, Windows Vista x64, Windows 7 x64.

x86_9x_attempt - supports Windows 98, Windows 95 is currently being attempted.

ARM_CE-4-5-6 - supports Windows CE 4, 5 and 6 on ARM architecture.

x86_CE-4-5-6 - supports Windows CE 4, 5 and 6 on x86 architecture.

Author

Started on February 28th, 2026 by C0m3b4ck.
Inspiration from Marek Ryński, the author of Bibliotekarz .NET - https://bibliotekarz.net/

TO-DO pre-1.0

Done:


* Every GUI needs to be finished, even if non-functional - DONE April 2nd, 2026
* CRUD needs to be done - the program is dependent on databases after all, could also use .txt files for configs etc. - DONE April 7th, 2026
* Hashing function used during registering and logging in - DONE April 10th, 2026
* Every form and tabsheet needs to clear all text fields upon being closed - DONE April 18th, 2026

To-do:


* Make Add/Remove/Edit TabSheets functional for books, readers and loans
* Fix all critical bugs (currently: 2)

TO-DO post-1.0


* Adding encryption to databases (especially readers)
* Backup making
* P2P communication with local/remote devices for backups
* Every GUI's items need to resize with window (will probably implement using anchors)

Known Bugs


* password does not auto-hide in login form [CRITICAL]
* cbo not populated in "Add Users" [CRITICAL]
* database_selection not switching to "Add Databases" when no other DBs except users.db are found [CONVENIENCE]

3rd party requirements

* self-built variations of sqlite3 3.35.4 for different OSes and architectures * DCPCrypt 2.0.4.2 - is imported into source project, but does not require separate binary (gets embedded into app executable during FPC compilation)

Supported OSes

Windows NT 3.1 Windows 95 Windows 98 Windows ME Windows NT 4.0 Windows 2000 Professional Windows 2000 Server Windows XP Windows Vista Windows Server 2012 Windows RT Windows Mobile Windows 7 Windows 8 Windows 10 Windows 11

The badges are meant to represent compatibility. For this reason, no badges with the word "certified" have been used. This project is not endorsed nor certified by Microsoft. Downloaded from https://logos.fandom.com/wiki/Microsoft_Windows/Compatible

Compiled versions:


x64_Linux - supports x64 versions of Linux (definitely Ubuntu and Debian)
x32_Linux - supports x32 versions of Linux (definitely Ubuntu and Debian)
x86_XP-Vista-7 - supports Windows XP x86, Windows Vista x86, Windows 7 x86.
x64_XP-Vista-7 - supports Windows XP x64, Windows Vista x64, Windows 7 x64.
x86_9x_attempt - supports Windows 98, Windows 95 is currently being attempted.
ARM_CE-4-5-6 - supports Windows CE 4, 5 and 6 on ARM architecture.
x86_CE-4-5-6 - supports Windows CE 4, 5 and 6 on x86 architecture.


Supports all versions of Windows, from Windows 95 up to Windows 11:

Windows 95 (requires the use of FPC 2.6.4 or older, has its own separate version)

Windows NT 4.0

Windows 98 

Windows 98 SE

Windows 2000

Windows Me

Windows XP (tested: x86, x32 and 64-bit, Home, Professional, includes: Starter, Tablet PC, Media Center, Embedded)

Windows Server (all versions including 2003, Small Business Server 2003, 2003 R2, Home Server,
2008, Small Business Server 2008, 2012, 2012 R2, 2016, 2019, 2022, 2025)

Windows Embedded versions, including: Windows Embedded for Point of Service, Windows Embedded Standard 2009, Windows Embedded POSReady 2009

Windows Vista

Windows 7

Windows 8

Windows 8.1

Windows 10

Windows 11

(probable future desktop OS from Microsoft)


Possible support via ARM compilation:

Windows CE (including versions 4, 5, 6, .NET 4.1, .NET 4.2, 7, 2013)

Windows CE for Automotive

Pocket PC (including versions 2000, 2002)

Windows Mobile


Will not be supported:


  • All Xbox OSes
  • Windows CE 1.0, 2.0 and 3.0 (requires DOS-like C compilation)
  • MS-DOS and Windows versions older than Windows 95 (3.1, 1 etc.)

Principles

  • Maximum speed, ease-of-use and efficiency
  • Privacy - encrypted databases for users without correct credentials
  • Easy installation and portability - user does not need to modify ANYTHING with their system, all is managed by the installer
  • Overall user convenience and ease of use, yet advanced management for admins and superadmins
  • Past, present and future compatibility with Windows

Why?

  • Visual Basic 6 works very badly on Windows 95,
  • VB6 only compiles to x32, requiring WoW64 on modern Windows
  • VB6 is hard to debug (barely any debugging upon compilation). The native mode does not allow for catching errors (like Python's JIT), but Pascal catches 99% of errors during compilation
  • Pascal can be compiled and distributed without any Pascal-related dependencies (VB6 requires its own .dll and other library files)

Screenshots

Windows 95

Image from Windows 95

Windows 98

Image from Windows 98

Windows 2000

Image from Windows 2000

Windows XP

Image from Windows XP

Windows 7

Image from Windows 7

About

BookwormVB rewritten in Pascal using Lazarus 1.6.2, with Windows 95-11 and Linux support.

Topics

Resources

License

Stars

Watchers

Forks

Contributors