Print

Print


Hi SignWriting List,

Someone asked about the differences between SignPuddle 2 and SignPuddle 
3.  There are several.

SignPuddle 2 has been in production for many years.  It has a wide array 
of features not available anywhere else, but it is showing it's age.

SignPuddle 3 has been in development for several years. Advancements in 
technology have caused delays and rewrites.  I am quickly approaching a 
usable release for dictionary editing.


Different Character Sets
--------------------
SignPuddle 2 uses the character set Formal SignWriting in ASCII (FSW).
https://steveslevinski.me/#standard2012

SignPuddle 3 uses the character set SignWriting in Unicode (SWU).
https://steveslevinski.me/#standard2017


Different Fonts
-------------
SignPuddle 2 uses a PNG based font, where each symbol is a separate 
file.  PNG images are know as raster images, which result in pixelated 
images.

SignPuddle 3 uses a TrueType font, where the entire symbol set is 
contained in a single file. The TrueType font is used with SVG to create 
smooth images that scale nicely.


Different Data Storage
-------------------
SignPuddle 2 uses an XML data storage on the backend.  Back in the day, 
I thought this was a good idea, but it has caused a lot of problems and 
memory issues.

SignPuddle 3 uses SQLite databases on the backend.  The data is easily 
access as JSON data and plain-text data lines.


Different Architecture
------------------
SignPuddle 2 is monolithic.  The front-end and the back-end are 
intrinsically linked.  Every action in SignPuddle 2 results in a new 
page being returned from the server.  The code was developed organically 
over many years and contains a lot of legacy code buried deep within.

SignPuddle 3 is modular.  The front-end client and the back-end server 
are entirely separate.  This means that other developers can easily 
access the SignPuddle 3 server without having to use the interface of 
the SignPuddle 3 client.  The SignPuddle 3 client is a single page 
application which is loaded once, where each new action results in one 
or more server calls behind the scenes.

For example, if you wanted to view the Brazilian Sign Language 
dictionary using the client, you could open this page:
https://signpuddle.com/client/#!/dictionary/bzs-BR-dictionary-public

Alternatively, an application developer could bypass the client 
interface and directly interact with the server data.  This data request 
will return all of the entries for the term "brasil".
https://signpuddle.com/server/dictionary/bzs-BR-dictionary-public/search/terms/brasil?type=exact

Using the developer API, you can read and write the server data 
directly.  The developer API documentation is available online as a 
static page.
https://signpuddle.com/client/doc/index.htm

The developer API is also available as a dynamic page with live server 
calls and real-time results.
https://signpuddle.com/client/api/index.html

Regards,
-Steve
https://SteveSlevinski.me

________________________________________________


SIGNWRITING LIST INFORMATION

Valerie Sutton
SignWriting List moderator
[log in to unmask]

Post Messages to the SignWriting List:
[log in to unmask]

SignWriting List Archives & Home Page
http://www.signwriting.org/forums/swlist

Join, Leave or Change How You Receive SW List Messages
http://listserv.valenciacollege.edu/cgi-bin/wa?SUBED1=SW-L&A=1