jPAF is genealogy program intended to work like PAF 5 .

PAF5 is available for download from Parowan Software

jPAF is written in javascript as a web app.  I may someday extend it to be a Progressive Web App.

Right now it doesn't save changes.  There is a lot of work yet to do.  This is just a "how far we've come" demo.

Click the folder icon on the tool bar to load up a PAF file.  (PAF 5 only - jPAF doesn't know how to deal with a PAF 4 file).

Once a file is loaded the family group page should populate with relevant data.  The arrowhead buttons should reload the page with the indicated generation.  Clicking on the data box for the husband, wife, grandfather or grandmother should present a pop-up box for editing data pertaining to that person.

The 'Save' button doesn't save anything yet.

The pedigree page should display appropriate info.

The Individuals list page doesn't do anything yet.

But you can try it HERE

The next thing to work on could be:
  • The pedigree drop down folds up too readily
  • save data from the EI popup.

After those are resolved there is

  • Notes, citations, sources
  • add events
  • add people (and linkages)
  • keep and update the delete lists
  • Individuals list tab/screen
  • save marriage edit
  • add marriage record
  • delete marriage record
  • create/edit/delete user defined events
  • create new PAF file with the expected user defined
  • reports
  • match/merge
  • import GEDCOM
  • export GEDCOM
  • share/compare data with
Thu Mar 31, 2022
An idea mentioned on the PAF5 mailing list has triggered me to rethink a bit of this project.  I'm going to undertake a re-write of all of the file access to use a storage format that will allow for local storage or server-based, multi-user storage.

Fri Mar 11, 2022
Previously got 'Save' from Marriage Edit to function well.  Have been working on save for Individual Edit.
Took a little time-out to see about excluding "console.log()" calls from the code when I publish it.  That seems to be working well. Tues Mar 8, 2022
Added color border highlight to final Save button.  When something changes in the fileimage in memory the highlight will be activated.

Sun Mar 6, 2022
More progress on the Save process for Marriage Edit.
Marriage and Sealing date and place are getting stored.
But saving Divorce date/place is only partly written.

Sun Feb 27, 2022
working on 'Save' button routine for Marriage Edit.

Sat, Feb 19, 2022
I've got ContactInfo screens working for every case I've tried. 

Tue, Feb 15, 2022
PAF5 has 2 classes of strings: Single instance - like person name, and multi-instance like place name.  The collection of multi-instance strings is organized as a binary tree so that strings can be found quickly for re-use.  I'm currently working on storing ContactInfo records.  It's not working as I intended (on some cases).  I just found that the issue is with mixed case comparisons.  Apparently it uses case-insensitive comparison in the binary tree.
More issues with key comparison in the binary tree -
It appears that the dash in a phone number gets ignored in the key-order comparison.  What about other dashes?  What about other popular phone number formats?  Do they also get stripped down to just numbers? (for comparison purposes). 

11:29 - All known problems with binary search resolved.
Sun, Feb 13, 2022
Marriage date was getting suppressed in the marriage edit pop-up.  Fixed it.

Sun, Feb 13, 2022
Made a lot of progress on being able to write back ContactInfo records.  To do that I had to deal with write out oname records.  I think I've got that mostly covered.  I don't remember what else I may have worked on earlier in the week.

Sun, Feb 6, 2022
This week I've worked toward writing note records back to the file. 

Of the several pop-up windows several were not cleared before popping up.  I've made changes that should make sure they're clear. 

Implemented a crude "go to RIN" capability.

Changes to suppress garbage display when an ordinance doesn't have a date specified.
Changes to suppress garbage display when an ordinance doesn't have a place specified.

When there was neither birth nor christening information a stray 'C' (for 'Christening') was being displayed even though the date was blank.

Added code so that on the Source cit screen the '<' and '>' buttons are enabled if there are other citations.

Mon, Jan 31, 2022
Ordinance events were showing 'undefined' for places where there was no info stored.  That is fixed now.

Some work toward write 'Note' records back to the file.

Thu, Jan 20, 2022
More work toward writing dates.  More work toward writing records back out.

Fri, Jan 5, 2022
There is no new version to publish this week.  I've been working on some stuff related to interpreting date strings.  But it isn't complete enough yet for anyone to recognize any difference in how the program behaves.  So, from the perspective of people testing the program nothing has changed.  So I'm not posting a new version this week.  The 2 week time-out on the version that is posted should still work until I get back early next week.

I did, however, accomplish upgrading the raspberry pi micro-computer that I use for a Netword Area file Server.  It was using a microSD card for its boot drive.  It now boots from a hard drive (external usb hard drive).  It seems to run smoother and faster this way.

And I've pinned down the date that PAF5 uses for the Julian -> Gregorian cutover.  It encodes the first 10 days of January 1583 with the same day number as the last 10 days of Dec 1582.

Sun, Jan 9, 2022
This week I have worked on encoding dates toward being able store stuff.

Thu, Jan 6, 2022
Fixed a bug in 'read_fam()'.

Wed, Jan 4, 2022
Worked on 'About', 'After' and 'Before' prefixes for dates.  (On the presentation side - still need to do it in the parsing side).

Tue, Jan 3, 2022
This week I've worked on several different fronts.
I've done a bit of coding on routines to re-assemble record images from javascript objects for a number of record types.

I've also worked at reading in a contact record.  Either I've got a bug or the old documentation is wrong.

Right now I can't remember what else I worked on this week.

Populate the Notes edit pop-up.

Beginning work toward populating the Sources window.

Populate 'Comments' in Select Source popup.

In the main menu, made the Family, Pedigree and Individual buttons perform as they should.

In the Edit Individual popup added the section at the bottom titled OTHER which includes Title, Married Name, AKA, Nickname ...

Tue Dec 28, 2021

Fixed some errors from previous merge of different development streams.
Cleaned up some problems with my test dataset.

Sun Dec 19, 2021
Not much else happening since Wed.

Wed Dec 15, 2021
I've noticed that the Edit Individual stuff isn't working right.  There is a 'description'  on some, and 'Confidential' on others.

I'm getting closer to getting it right.  But it looks like PAF5 never shows 'Confidential' and description even though they might have that info in the file.

Sun Dec 12, 2021

This week:
  • reworked some of the work on Repositories to generalize it.
  • made a rudimentary date range display with correct numbers.
  • some work on the marriage edit box
Sun Dec 5, 2021

This week I
  • worked on screens for Repositories, sources
  • improved date presentation (more cases)

Sun Nov 28, 2021
This week I built the screen to display the Repositories file and select one and started on the screen to edit repositories

Earlier this week I:

built a menu bar

populated some fields in the citation window

Load the starting RIN from the file

passed event name between windows.

worked a little on the marriage edit window

Sat Nov 20, 2021
I don't remember all the changes since 11/12.  But the most recent has to do with getting the name of the individual or couple into the headings of the Notes and Sources popups.

Fri Nov 12, 2021
Worked on security today and on the marriage edit popup.

Wed Nov 10, 2021
Worked on the Select Source screen.  Now it comes up with several buttons disabled until the used clicks on a row selecting a source.  The 'Select', 'Edit', 'Copy' and 'Delete' buttons are the ones that are disabled when the box first comes up.

Tue Nov 9, 2021

In the Source Select screen the four divisions on the right side of the screen now get data from 'Title', 'Author', 'Publishing Info' (or 'call') and 'Comments'.  And I managed to get the border pretty much like it is in PAF5.  So, in other words the 'Select' button works (if you have previously clicked on one row in the displayed list of sources).

Sun Nov 7, 2021

Well I didn't work on either of the topics at the top of the Do List.  Instead I worked on the citation links on the pop-up you get when you double click on an individual.  I call that the 'edit individual' screen.  In the list of events below the individual's name you'll see 's' in the right column.  If you click on those you get screens related to citations and sources.  That's what I've been working on this week.  In particular the cases where the 's' shows as 's*' - meaning there is attached data.  There are several screens and sub-screens that come from that.  I've taken it quite far this week.  I've used my main PAF file as test data.  I have an entry in the list of events for my patriarchal blessing the the text of it in the "Actual Text" field.  All that works now except the 'Repository' field, the 'Edit' button and the 'Replace' button.  And the 'Image' button.  Oh, and the tabs at the top, and the title on the second line.  It looks like I yet have got a lot of work to do on just that one screen.  The '<' and '>' , New, Delete and Help buttons don't do anything yet.

Sun Oct 31, 2021
I still haven't got the Save button to store any data back to the file image in memory.  So changes can't be stored yet.  But I've formatted a number of pop-up windows that trigger off of buttons on the 'Edit Individual' screen.  So the Notes and Sources pop-ups pop-up and cancel.

Sun Oct 17, 2021
This week I've tried a different idea for the data type of the data drawn into memory from a .paf file.  I found that the alternate idea didn't work so well so I'm back to the original plan.  I've written code to store some info from the front part of the file - including owner name and address and deleted record chains. 

Haven't been able to test them very well.  I suppose I won't have a good way of testing until I have other code drafted to store various record types. 

My most recent work has been on dates.  Since there won't be any visible improvements I'm not updating the displayed app.

fixed a point of pedigree navigation

Fixed the freeze-up related to the 'Other Marriages' pull-down

Changed internal data storage from one large buffer holding the whole file to an array of data blocks conforming to the internal block structure of all PAF files.

Got file download to work.