EzInvoice 8.1 Released!
8/7/22, 4:25 PM
We've upgraded EzInvoice Pro to the new "8.0" version of the app.
This is a pretty big upgrade and everything should be compatible with your existing documents and data but if you run into any let us know and we'll address them immediately.
Quite a bit of the work we've done is fine tuning the page layouts and "App Styles" design code (CSS).
All of the document styles have now been tested to display properly in web based email clients like Gmail and others.
There's also a few new Invoice/Document Styles you can choose from. We've added a "Plain Text" style and a what we think is a very clean and elegant style we call "Studio" that's designed specifically for email as opposed to printing. You may not know it, but several of those older document styles are designed to be folded and stuffed into a standard two window envelope for sending via the Post Office ("snail mail")
We've also added a checkbox on the "Customer" screen for creating/editing Invoices and other documents that lets you fast fill their "Shipping Address" with their business address. That's a small thing but it makes it easier and faster and helps to prevent typos.
We've added a new feature that lets you easily select a "Background Image" for the app in the Preferences. We've created a library of "free images" we've sourced on the internet that we've selected to work with the different color schemes you can choose from in your Preferences "App Styles". Right now there are 16 images you can choose from. You can still use your own images if you want to use those. Just send us an email with your image attached and we'll set it up for you.
8/3/22, 8:49 PM
We've added a few new designs
So there are eight document designs to choose from and all of them are compatible with the Gmail app.
The newest design is called "Studio". Personally, I like this template a lot. It's a simple clean design that's made for email. There's also one called "Damascus" that has a more "artsy" feel to it. And there is a "Plain Text" one that's just plain old text.
Aside from that we ditched the "Reactive" template we were working on. It worked great for displaying on phones and mobile devices but Gmail just mangled it.
We also spent quite a bit of time on refining and improving the app to work better on mobile devices.
New Plain Text Invoice Template
7/20/22, 8:00 PM
A template even Gmail can't screw up!
I've just about got a new invoice document ready for invoices that's displayed as plain text when viewed with Gmail.
I can assure you that there are a lot of app developers complaining about how Gmail strips out html and css, even simple html, and there's really no good reason for it. It's not a "security issue".
The next step for this is to look into creating an email that contains both a plain text and an html version of the document. I know there is way to do that but it's been awhile since I looked into it.
CSS App Styles and Background Images Updates
7/8/22, 1:44 PM
Lots of refinements and a few new features.
We've added a way to make it super easy to select a background image for the app by creating a library of images for you to choose from. We've tried to add images that work well with the App Styles you have to choose from and we'll keep adding more images as time goes on. If you have a photo you'd like to share for others to use we'd be thrilled to add it the library.
We've also been refining the App Styles as well to make them more cohesive and unique. The goal is to let you create a custom "look and feel" for the app that makes it a pleasure to work with.
Added a "Shipping Address" checkbox for Customer Invoices
This really is something I've overlooked for way too long. In the old ezInvoice v3 there was a "Checkbox" that let you add your clients business address as their shipping address on Invoices and other documents. If you have a shipping address in their Customer file the app will use that now, but if you don't you have that filled in you have to fill it manually in on invoices and other documents that need to have it displayed. So now you can do with by just checking the checkbox on the Customer screen when you're creating a document.
We're also going to add a form for your Business Shipping Address to your Preferences to make it faster and easier to fill out Purchase Orders when you order goods from suppliers and want them shipped somewhere that's not your office. This will also include additional work on the code to create a Purchase Order so we'll be creating an all new routine for that because what we have now is really a hack glommed on to the "Documents" code that creates Estimates, Quotes, and Receipts.
By the time we finish all that we'll have enough done to push another update to the production app. Probably be near the end of July/Mid-August. So this will be a pretty substantial update to the app. Like I've said, a lot of the work we've done the past few weeks is design code. But we've also done quite a bit of work optimizing the app code and CSS style code in that process as well.
Check out the progress with the beta app.
EzInvoice Pro v8.0.33
6/29/22, 4:28 PM
And more minor updates coming...
We've been working on the beta app and we'll be updating the production app from time to time over the next few weeks. Most of this work is refining the app code to reduce complexity and the design code (html and css) for mostly small refinements.
For example, I've updated the search routines for Documents (other than invoices) to search through your "Item List" and a few other data fields that were being ignored.
I've got a new document template called "Damascus" I'll adding soon. You can see that in the beta app now.
We've updated the "Bootstrap" code from v4.5.0 to v4.6.1 in the beta and we'll be updating the production app with that soon too. We're still not using the latest Bootstrap code and I may not. From what I have seen so far that requires we load code from a 3rd party source and I'm not willing to do that. I may be wrong about that and need to look into it some more but their website seems to require it.
So we'll be integrating these small changes in the code a bit at a time and testing them as we move forward.
Upgrading to the latest "Bootstrap" code
6/11/22, 11:22 PM
It's time we get caught up with Bootstrap
The version of Bootstrap we use is not the latest version and it's time we update the app to use that. There's been a lot of work on their end and we're getting quite a ways behind. We're using version 4.5 and the latest release is 5.1
So I'm going to spend some time getting the app caught up with that. For the most part we're just going to update the screens to use the new CSS code and refine the forms a bit. The goal is to make the app display better on both mobile devices and desktop PCs and the Bootstrap toolkit is what we use to do that.
Dynamic Document Design is Dead...
It's also Bootstrap that I've used to create the "Dynamic Document Design" mentioned below. I tested that invoice in "Thunderbird", which is a pretty old email client made by Mozilla and it looks great. Today I tested it in Gmail and and another email app I use and it looks awful. So I looked into why and learned Gmail won't load a remote css file, and apparently neither does my other email app, Roundcube Webmail
So I'm not going to go any further with that. We'll stick with standard HTML and CSS for document templates. I think it's a shame that Google doesn't support that but there's no arguing with them. I also think it's pretty stunning that the Thunderbird email app renders those spot on. It still uses a very old design that looks like something from the late-90s but it displays that invoice perfectly. It's not like Google has to download that CSS file it uses, they can defer that to viewer's web browser, so it really makes no good sense that they block that.
Dynamic Document Design
6/9/22, 10:51 PM
So I've been learning about and tinkering with the new Bootstrap tools to create a dynamic design for invoices and other documents and I've got a very simple design that works very well for mobile devices. I'm surprised with how well it works.
And you can try out the new template with the beta app.
6/8/22, 6:31 PM
EzInvoice Pro v8.0.32
This update includes some changes to the app styles and some minor changes to the app code. You'll notice the dropdown menus have been restyled and the app styles have been updated with some other small changes for consistency.
New Invoice Template
6/8/22, 1:08 PM
My first shot at creating a dynamic document design.
All our current document templates use old school html tables with fixed dimensions and they're all designed to printed on paper. So the new template I'm working on now is designed to fit the screen on the device you're viewing on it.
Logo and Background Image Display Issues on Invoices
5/27/22, 6:34 PM
The routines for this have been updated.
I swear this is one of those things I've thought I'd fixed several times, but didn't. So I spent time again today working on and testing my work. I think I've got it nailed down now in all of the routines that needed it, previews, emails, and printing.
I'll also went over the other documents to make sure this is working for those too. If you run into any issues with this please let me know.
Updated the Demo and Free Apps
5/23/22, 9:39 PM
And a few minor tweaks & bug fixes
Finally took some time and went over the demo and free version of the app. Those apps use most all of the same code but the free and demo version of the app run offline and don't connect to our database. And there are some features that don't work because you need an account to use them.
The Free version of the app is really pretty sweet now, especially for a startup business on a shoestring budget. I still need to make a way to import data from the free version to the "Pro" app for those who want to upgrade and that should be a interesting little project to work on so I'll probably get started on that soon.
Check Out the New "Damascus" Document Template
5/1/22, 3:11 PM
The new "Damascus" template is simple and a bit more stylish and less "corporate" looking than our original template.
It's also our first step towards looking into simplifying the structure of those templates so we can start experimenting with new designs that offer a more modern look.
I have no problem admitting that I am not a design professional, but I do have a great appreciation for those who are and I think it's fair to say I know good design when I see it.
Our "Original" invoice template was purposely meant to be a very generic looking invoice, and designed to be printed and folded and stuffed into a standard #10 Double Window Envelope because back then invoices were still being sent via "snail mail". It's fair to say that nowadays most invoices are delivered via email, and have been for a long time now, but the designs used haven't really changed much.
So we want to spend some time working on new designs and page layouts, and also letting users create their own and add them to the list of templates they can choose from.
With that in mind the new "Damascus" template is the simplest template we've made so far, so it's a good starting point for others to begin with. But it's also based on the "printed page" standard we've been using all these years so we still haven't begun to explore designs created for emailing.
Emailing Document Issues
4/28/22, 2:06 PM
I made some minor edits on the"Print/Email" routine for Invoices and Documents a few days ago that prevented them from doing either of those things.
After reviewing that code I decided to bust it up into dedicated routines that only preview, or email, or print documents because the code was what coders call "spaghettified code".
Spaghettified code is code that's been edited over the years to add more tasks and features to the point where it's almost impossible to make a change anywhere in it without busting something somewhere else in the routine.
To be honest, I've known I had to bust that up and into smaller manageable routines that only did one thing for awhile now. In this case that's Previewing a document, or Printing a document, or Emailing a document.
So now we have functions for each of those features, and they'll be much easier to maintain and build upon.
Updated Billing Statements
4/20/22, 4:35 PM
Fixed a few issues in the Billing Statements functions.
The invoice list table needed some adjustments and there was a "$ missing on the "Balance" column.
And the "Email Sent" message box needed to be hidden when leaving the Statement screen.
Invoice Preview Logo Display Bug
4/13/22, 8:04 PM
I fixed a bug in this today. It should work fine now. If you still have issues with this please let me know!
Use The "Logout" Button!
4/8/22, 6:24 PM
It does more than just logout...
If you just close the app window in a web browser without logging out first your web browser will store the app files in its "cache" and use those the next time you use the app.
When you use the Logout links the app deletes the cache to make sure you'll load the latest app files.
EzInvoice Pro has a lot of features so there is a lot of code required to manage all those features and we are constantly looking for ways to improve it. We make changes anytime we find something that can be improved, and a lot of times those are very small changes. And whenever we find a bug we start working on squashing it. Sometimes that requires we make changes to several files.
Some of those changes are so small that we don't increment the version number so you won't see that change, but you can be sure you always have the latest files by clicking the "Logout" links or button when you're finished working with the app.
Updated the "Search" app
4/8/22, 6:10 PM
Added Products & Services and Expenses
We mentioned earlier that we'd be working on the new "Search App". Today we added Products & Services, and Expenses, to the list of results you'll get when you do a search.
Statements date has been fixed
4/7/22, 12:12 PM
This was an oversight that just needed the code to add the current date to the Statement document.
Statements still need some work
2/2/22, 7:38 PM
Dates are missing and so is a Document Number.
I'll get to that this week and push an update asap.
Updated the User Guides
4/5/22, 8:33 PM
We added screenshots of the app to help make it more clear how things work.
And we did some editing on the user guide to update additions and changes.
We'll continue to work on this to add details but the screenshots do help a lot and this latest version is a pretty big improvement.
The next big step for this is to add videos and I hope to get started on those soon too.
Updated Purchase and Renew Routines.
4/2/22, 2:39 PM
We've integrated renewing your account into the app itself.
Now when you click the "Renew" link on the home page you'll a screen pop up with a button to take you directly to PayPal to pay the renewal fee.
After completing the payment you'll be send back to the app so you can login again.
Updated to v8.0.2 Because Service Workers Still Suck
3/30/22, 4:53 PM
Still having trouble with these.
I have been working with this "feature" for over two years now and it still does do what it should so today I spent a bit of time working on an entirely different way to make sure you always have the latest updates and it seems to be working great.
This new method doesn't work for "Offline-First" usage but I'll keep working on that in the beta version of the app.
I took a fresh look at what Mozilla.org has for docs on this and they've got a lot of new content since I last looked into it so I'm, once again, optimistic we can get these working as intended.
Updated to v8.0.1
3/29/22, 3:04 PM
We've already made a few small adjustments
So far I've not heard of any issues with the new app, so that's good! But I have already made a few adjustments. For example, I found I needed to change the version number on the old service worker file to get the app to install the upgrade when using the Firefox web browser on my old Mac computer. Aside from that I've made a few other very minor changes and adjustments.
If you run into issues please let me know asap.
EzInvoice 8 Upgrade Released!
3/28/22, 1:36 PM
Lots of refinements and a few new features.
We installed the upgrade last night so the next time you login you'll be using the new "8.0" version of the app.
- Add Images to your Products and Services billed for on your "Item List".
- New "Search" feature: Find any and all documents made containing your search terms.
- Added "Billing Statements" that show charges and payments for clients and customers you bill.
- Added a "Todo" app to help you remember things you want to get done.
- Much improved layout and display on Mobile Devices.
- Refined the document Templates to improve the layout of Invoices and other documents
- Added options to turn tracking pixels on Invoices on or off.
- Improved the "Service Worker" to make it much easier to update the app.
As always, we depend on you to let us know of any bugs or issues you find, and any new features you'd like to have.
EzInvoice 8 Upgrade
3/21/22, 2:02 PM
We're on track for release at the end of the month.
We've spent a lot of time testing this release since our last update here and it's looks like it's ready for prime time now.
The improvements we've made for mobile devices have gone quite well so that's really a lot better now. We'll continue our testing and making refinements to the layout and design until the end of the month.
If you have time please take a look at the beta app and check out the changes and new features. And let us know if you find any issues or have suggestions to improve it or features you'd like to have.
Latest Upgrade News..
3/12/22, 4:13 PM
We're getting very close to release ready.
I spent a lot of the past few days working on getting the app Reports to work and display better on mobile devices. They were about the last thing that really needed some serious attention for those. They're looking quite a bit better now but the "Billing Reports" still may not display well on small phones. You probably have to hold a smartphone sideways to view the tables of data in those. That's really pretty good though when you consider this is really a full blown "Office" app. There are some things you really cannot shrink enough to be useful on those small devices but I think we've done pretty well when all things are considered.
The new "Add Photo" feature for the Products & Services is working well and it's really pretty sweet. I don't think there's much more we need to do with that.
The new "Update the Cache" routines are working much better in my testing. Looks to me like they're ready to go.
We've made a lot of changes to the "Logo & Styles" Preferences screen. First off, we've renamed that tab to "App Styles". And we've redesigned the layout to make it easier to use and display better on mobile devices. And we made some changes to how we manage those photos. We now rename the files you upload, and we limit the file size. You'll get an alert if your file is too big and it won't be uploaded.
The new "Search" feature is nice and we hope you find it handy.
Timed Out Error
3/10/22, 1:59 AM
Getting an "Error Timed Out" when trying to login...
I've had several users report this issue but haven't been able to duplicate it until today when testing the beta app.
I'm still not sure what's causing this so I'll have to keep looking into to, but after trying to login a couple times I "Quit" the web browser and restarted it and was able to login with no issues.
This indicates to me we might have an expired session cookie that needs to be deleted but I'll have to duplicate it to find where I need to address that in the code.
Use the Logout Link!
3/11/22, 2:51 PM
I've updated the beta app again.
This is just a few small refinements and I'll continue to do that over the next few weeks before upgrading our production app (the app you're using).
One thing I've forgot to point out is the beta app automatically installs updates when you logout now. This should make things a bit easier for you so I highly recommend you use that "Logout" link on the home screen or main menu when you're finished using the app.
3/9/22, 9:06 PM
I'm looking into "Minifying" our app code
I've been aware of code "minifiers" for a long time but haven't tried using those on our app code, so let me explain what that means. When writing code we format the code so it's easy to read and understand. We use line breaks and indents and blank lines to make it more readable and we add comments to make it clear what the code does and why it does it. But the code doesn't need all that fancy formatting with line breaks and indents and blank lines and comments to work, so coders have created utilities to "Minify" their code by removing all of that. And when you do remove it the file size can be reduced by quite a lot sometimes.
Reducing the file size by minifying the code will make installing the app faster, and that's important because if you start using the app before it's fully installed it can get buggy.
Now I'm not sure how much smaller the app will be after I minify all the files I can. And I'm not sure if that will introduce any bugs. I know the utilities out there that do this say it won't bug up your code, but I've not tested them so I'm not convinced yet.
New Product Images Feature
3/6/22, 3:25 PM
Add product images to invoices and other documents
You can now easily add images of the products you sell on Invoice, Estimates, etc. Just upload the image using your "Products and Services" app by editing an existing product or when adding a new one.
Once you've added your image it will show up when you select that product with the "Fast Fill from Product List" feature on your "Item List" screen when creating or editing an invoice or other document.
Your product image will be displayed in the Item List of your Invoices and other Documents.
Your image file size is limited to 200k, and the display size of the image is set in software and the document templates used to preview/print/email your documents. Basically you'll want to keep them pretty small.
We recommend a maximum height and width of 200 pixels but we do not set limits on that.
We'll be working on some new document designs that will feature your product images soon.
The images you add using the Products and Services app will not show up on existing documents.
EzInvoice Pro Beta Update
2/9/22, 3:33 PM
Check it out.
We've updated the Beta app again and it's getting pretty close to being ready to upgrade the production app.
User's should have received an email describing the new features and changes.
You can take it for a test drive at https://cherrypc.com/beta
Tracking Pixels on Invoices
2/7/22, 10:35 PM
In the next version of EzInvoice you can turn tracking pixels on or off. You can set your default use of those in your Preferences and change that for the invoice your emailing.
We use "tracking pixels" on invoices to let you know if an invoice has been opened by the person you've emailed it too. We've been doing this for years because it's not uncommon for some businesses to tell you "I never got the invoice" as an excuse for not paying up.
The tracking pixel will count how many times an emailed invoice has been opened. The way it does that is simple. We put a tiny, 1x1 pixel, invisible image in your invoice. When the person you've sent it to opens the invoice in their Email app it sends a request to our server to get that tracking pixel, and when it does we record that in your invoice data.
After you've emailed your invoice the next time you click the "Edit" and go to the "Deliver" screen you'll see how many times your your invoice has been opened by the business you sent it to.
There are some web sites that show advertisements on their web pages that use tracking pixels. They get paid a small bit of money every time the ad is loaded so the add company can count how many times it was viewed and record your IP address to see how many times you've seen it and what websites you've seen it on. This has been going on for years and is considered to be a shady practice by most ethical companies and developers.
Because of that we decided it's best to give you the option to use those, or not.
Personally, I think tracking pixels on emailed invoices is a good thing. While they are not 100% reliable, they do in most cases accurately reflect rather or not your invoice was viewed by the person you sent it to, and that can be handy to know.
To be clear, we do not add tracking pixels to any other documents you email (and never have).
Update on Updating the Cache
2/7/22, 9:29 PM
It's a rodeo.
So, since we first released this app it's been a pain to get updating the cache working right, and this is important stuff. I have spent countless hours going over the APIs for this stuff and searching for and testing example code, and nothing I've found has worked like it should.
The way it should work is I update the version number in my "Service Worker" and when you log in the app downloads all the files and the next time you log in you're using the latest version of the app. But that's not what happens in the real world. From my testing most web browsers may or may not download some of the files, or even none of them.
From what I understand the browser does a quick and dirty comparison of the old and new files and only downloads them if it sees a difference. But some of the changes I make are very small ones and it seems, at the very least, to ignore those. But that can screw stuff up, and it's been screwing both us and you, the users. And it's been frustrating the hell out of me trying to get it working as it should. This is one of those things that developers should be able to grab and working example and make a few edits and it works.
Anyway... I finally found an example that got me a bit closer after looking for how I could delete the cache entirely and then reload the app. The example worked great in Google Chrome based web browers, but did not work in Firefox. So I hacked on that code for awhile and finally did get it working on both of those web browsers.
Basically the way it works is it compares the version number of the app you have to to the latest version number and if there is change it deletes all your old app files and reloads the web page and installs all the new files.
Because I still don't trust it entirely I also added an "Update App" link on the Home Screen. Once you click it you'll have to reload the app yourself. This isn't as convient but it seems to be a pretty surefire way to update the app.
You'll know the app has been updated by comparing the version number near the bottom of the Home Screen before and after you click that "Update App" link near the bottom of the screen.
Make a Statement!
2/2/22, 7:29 PM
Billing Statements are Back!
The old ezInvoice v3 had a billing statement feature and some how it's never made it into our more recent versions. So we're fixing that. We're working on making it fast and easy to create a billing statement that lets you list all your invoices for any date range you want for your clients and customers. It shows the total charged and balance due for for each invoice and the total balance due. And you can include a PayPal button to make it easy for your clients and customers to pay you if there is an outstanding balance.
This feature will be available in the next update to the Beta version of the app.
ezInvoice 3 is Officially Retired
1/28/22, 7:29 PM
It was an amazing run...
ezInvoice 3 was the last version of ezInvoice to run almost entirely on the server side using the CGI.pm Perl module to do most of the work. And was still using a lot of code from the very 1st version of ezInvoice, which, as I like to point out, was probably the "World's 1st Web App" when we released it in early 2002.
It ran for 20 years using a simple database we designed, and the database was blazing fast too. For a short time we use the MySQL database but soon realized that was a really poor choice for was is essentially a "Document Management" app. That sucked because we'd put a lot of work into building that app but it was buggy as can be.
That is the code that ezInvoice 3 still runs on. Like the new ezInvoice Pro, the first few months revealed quite a few bugs reported by users and we worked hard on fixing those. By the end of the year it was stable and aside from some minor glitches that came up when we upgraded our app servers it's been running 27/7/365 since around 2006.
20 years... That's just amazing.
Building All New EzInvoice.com Server Has Begun!
1/22/22, 8:54 PM
We're just about ready to shut down the old ezInvoice server so we can build and test the new one.
While we're working on this the new ezinvoice.com home page will redirect you to the "CherryPC.com" server.
The new server is running the latest Ubuntu OS (v20.04) so it will have a long and secure life ahead of it. I'm sure we will run into a few issues that will require we rewrite some code but that's a good thing because it will be more efficient and secure.
This system software upgrade will also give us access to new features and tools, and upgrades to tools we already use, so this is really a pretty big deal for all of us.
Upgrading and configuring a new production server always requires some learning so we'll be taking our time to get up to speed on the changes and new features we'll be working with.
The switchover to the new server will be seamless this time around so you user's really won't notice that. As to when that will happen, I can't really pin down an estimated date yet. All things considered it should be easier now than ever before to get everything installed and setup, but there are still a lot of details that need to be nailed down, and lot's of testing, so the best I can guess right now is somewhere between 1-3 months.
EzInvoice Pro v8 Coming Soon!
1/21/22, 8:58 PM
Let's review what's new and improved...
We've been working hard on this new version for several months now. Much of the work has been on optimizing the app code. We've learned a lot of lessons over the course of the past few years we've been working on this so while everything will still "Look" pretty much the same the app is much faster and the code is much cleaner and now much easier to continue to add features in the future.
Another thing we've been working hard on is the design code, the "CSS" and "Bootstrap" code specifically. You'll really notice the difference on phones and tablets and it's also cleaner on a Desktop PC.
And we've added two new tools! One of them is a new Search Engine. You can already find most anything you're looking for but the new "Search app" will list everything that matches your search terms. This 1st version is really a solid foundation we'll be building on to make it blazing fast and super easy to find whatever you're looking for. For example, it will list all of the documents you've made for a client and their contact file and any products you purchase from them that are in your Products and Services database.
The other new tool is a simple "Todo" app. The Todo app saves your todo list on the device you're using it on so each user has their own Todo list.
And right now we're working on making updates and upgrades easier. We've got that working solid for users now but we want to make it easier fur us too. There are a few more avenues we want to explore before we decide which we want to use. After we get that nailed down we'll be ready to release the upgrade.
And we also need to talk again about the "Local App". This year we moved our development to a completely offline first environment and it's increased our productivity by quite a bit. Mainly because the app is faster and when our local network is busy with lots of users (it almost always is) our work on testing the app is always blazing fast because all of the work done on the internet, saving and getting files, is done in the background when you're using the "Local App" instead of the "Cloud App". And it works even when your internet connection is down. If someone calls or comes over and asks about an invoice you can pull it up and print it if you need to.
The "Local App" technology is really pretty amazing. We know we are at the very leading edge of implementing this, but that's because this is exactly the kind of app that users need to have this option.
Todos and Searches
1/18/22, 4:14 PM
Two new apps.
I've been working on both a new "Todo" app and a more powerful Search engine.
The search engine is being designed to find anything and everything that matches your search terms and list them all.
The "Todo" app provides a handy fast and easy way to create a list of todos. The Todo app is designed to store your list of todos in your web browser's built-in database so each user has their own list of todos.
These new features will be included in the next upgrade, ezInvoice Pro 8.
No Blobs After all
1/14/22, 11:45 AM
It was a fun experiment but didn't work out.
I worked on this for quite awhile and hit a wall when emailing document. Gmail, and probably other big email service providers, apparently don't like image blobs. I may get back to them later to see if there is anything I missed but it looks to me like they're a no go.
You can check out the demo I worked on at https://azartiz.com/blobs/
When you "upload" an image it's stored in your web browser's built-in database. When you reload that web page your image will be loaded from the web browser's database.
The Blobs are Coming!
12/15/21, 12:07 AM
They're embedding our documents!
Our "Blobs" are actually a good thing and what we're really talking about is embedding images, like your logo, in the documents you send as opposed to using links to images stored on our webservers.
We'll be storing your logo and background images as blobs in your database instead of having them in an directory in our web server. This makes them easier to for you to manage and use and it keeps your app account much cleaner and easier for us to manage.
One of our goals here is to make it really easy to install the apps on your office computer so you can use it just like a native app. Moving all the images to be stored in your database and embedded in your documents is necessary to make this easy.
This feature will be available in the 8.0 version. We not in a hurry to get this out but we will be making a beta available soon, probably sometime in January 2022.
EzInvoice Pro 8.0
12/8/21, 2:13 PM
Heading towards the finish line...
We're getting closer to wrapping up the feature list and design changes we've been working on for the past couple years. Most of the changes you'll see in the next update to v8.0 are refinements as opposed to new features but there are some big structural changes under the hood that are very important. These changes make loading updates to the app work like they're supposed to work, i.e. they make sure you reload all of the app files when an update is released.
Aside from those structural changes we've also spent a lot of time refining how the app works on mobile devices. Those changes will be very noticeable for those who use mobile devices.
We've also been working on making it easier to install the "Local-First" version of the app. So far this new feature hasn't drawn much interest from users but we're going to keep working on this because it's really an important path forward for users.
In fact, we've moved all of our dev work to the Local-First version in-house now so we don't have to depend on an internet connection to keep working. And it's increased our productivity by a lot. The app is much faster so testing changes we make is easier and more reliable. And with the new structural changes it's much faster and easier for us to push the updates we make out to you, the users.
One of the things that's really cool about the Local-First app is the app code can be modified just for your business. And it's really not that hard to do. Most any web developer can jump in and make changes and add features. The app code is intentionally designed to be easy to modify and add features. Most any local web shop could jump in and start working with it.
So, the "8.0" version is not an "all new app". It's an important milestone that represents the completion of a set of ambitious design goals. From here it will just keep getting better.
11/16/21, 11:21 AM
Installing EzInvoice on a Mac Mini
I spent some time the past few days looking into what it takes to run EzInvoice Pro offline on a Mac desktop computer. The Mac I'm using is old but I did this on a freshly installed MacOS (10.100.6) on a "Late `09 Mac Mini", so that really shouldn't be much different than how this works on a new Mac desktop pc.
The Mac OS has a built-in webserver so I just made a copy of the app running on our webserver and put it in the Mac's webserver and loaded it by going to "http://localhost/app/" and it worked, but you still have to be connected to the internet to use it as configured and what we really want is an "Offline" app that doesn't need an internet connection to run and that stores all your invoices and contacts and other data on your computer, just like a good old fashion "Computer Application" that you "install" on your computer.
EzInvoice Pro has been designed from the ground up to be an "Offline-First" app but there's still really no standard way of doing this. "Offline-First" is just a concept. There are no hard and fast rules for how to make these or standardized tools to make them with and there are some pretty huge restrictions on what web browsers will let developers do on the devices users run them on, and for good reasons. For example, a web app cannot scan your hard drive looking for files to upload to the app's maker.
With an app like EzInvoice Pro users create and store documents, and over time they can easily have 1000s of documents stored, and that's where things start getting problematic. My testing had my web browsers choking to the point of being unusable when I stored more than 3-4 thousand documents in a web browser's built-in "IndexedDB". That's pretty much a dealbreaker on it's own but there are other issues, like getting your data out of that IndexedDB to make a backup of it or share it with other apps.
The best solution we've found is to install the CouchDB Database application on your desktop pc, and it's actually a great solution. You can store a million documents in that and it does all the heavy lifting to make it fast and easy to find one in a million. And it provides features to create backups and snapshops of your data. And it can even sync your data with a remote Cloud based CouchDB for online access and offsite backups of your data.
When you install the EzInvoice Pro app on a Mac computer like this it's no longer a "Web App". It's essentially a "Native App" running entirely offline on your computer and using a very powerful database.
Using CouchDB like this also creates a way to let you, the user, create your own apps that can work with your EzInvoice data and easily run other apps that use CouchDB for offline functionality. You can modify the code yourself, or pay someone to do that for you (or hire us).
Updated Home Page
11/3/21, 5:44 PM
A fresh new look!
Yes, we finally got around to updating our home page on both the "ezInvoice.com" and "cherrypc.com" servers.
But we're still working on other things too. We've already added a few small new features on the Beta app and made some adjustments and improvements again on the invoice templates. We'll probably spend another month looking for ways to improve the app before we release another update. We've got some ideas we want to work on to make getting the updates more reliable that we want to test. The previous update was seamless for users so that's great. Now we need to make it easier for use to get them ready for you.
Testing New Print Document Routine
11/2/21, 2:38 AM
It's a simple change but...
Right now the app opens a document you want to print in a new web browser window and from there you have use your browser menu to print it. We came up with a very simple way to send the new web page directly to your printer as soon as in loads in the new window. We still have some testing to do on this but it looks like it should work pretty good.
EzInvoice Pro 7.9 Update Completed
11/1/21, 1:29 PM
Took a little longer than we expected
We found a few more things that needed to be fixed and spent some more time fine tuning the app on Saturday and even Sunday morning. It's such a big app there's bound to be a few more things that need attention so if you run into any odd behavior please let us know
But... wow! The app is getting so sweet. It displays so much better on mobile devices and the document templates print so much nicer now. We still have some work we want to do on those but we're getting them refined now and we've learned a lot in the process that will make it easier to create new designs and continue to improve what we have.
I'd like to build a way for users to be able to create and upload their own document designs and we're actually pretty close to being able to do that now. And while we're at it we can also build a way for users to upload their own "Styles" for the app itself.
While working on those feature these past few months I've realized how much of a difference it makes when using the app. For example, being able to upload a "Background Image" for the app that you really love makes using the app a pleasure. And being able to change it whenever you want adds a bit of fun.
I want to spend some more time on those aspects of the app. Technically, under the hood so to speak, it's a very robust and modern app and it's running solid so now we can start working on polishing it up and giving users more choices and tools to make it their own.
EzInvoice Pro 7.9 Coming Soon
10/27/21, 5:23 PM
A Few Fixes and a Few New Features
We spent quite a bit of time refining the app for mobile devices to make it easier to use.
The biggest change is the "Navbars" at the top of the screens. They are no longer "fixed" to the top of the screen. Now they scroll up/down with the page. On a desktop PC with a screen big enough to view the entire page you won't notice a difference but on mobile devices it gives users more space to get at the features they want faster and easier
And now all the Navbars now have "Shortcuts" built-in to the "EzInvoice Pro" tab that make it faster and easier to get to what you want to work on next.
We also added a "Send Payment Reminder Email" button to the "Details" dropdown info box on your Invoice list. This is basically a shortcut to that same feature in the "Reports" app where you have the same button on the list of invoices in "Overdue Payments" report.
And we spent a lot of time finding and fixing bugs and rewriting and refining bits of code to improve performance and clean things up.
We'll keep working on testing and looking for bugs and ways to improve things and if all goes well we'll release these updates this weekend. Probably this Saturday, Oct 30.
10/26/21, 1:30 PM
Fine Tuning EzInvoice Pro for mobile devices
I've been spending the past few weeks working on making the app more mobile friendly. It's usable now but there are a some things that needed attention. These are almost all small design refinements in how the app "reacts" with mobile devices.
Basically we have to account for the different screen sizes phones and tablets will display the app in and adjust the layout for those. The best tools available to help with that are pretty darn good, all things considered, but they're not perfect. There are just too many variables to account for in how all those devices differ in how they render the screens you see and use. So you have to try to create something that works well on all of them as opposed to perfect on any single one of them.
We don't track any user data at all but according to PayPal about 20% of our users pay for the app using a mobile device so it's probably fair to say that many also use the app on those too. For them it's been obvious we've not spent a lot of time fine tuning the page layouts for mobile devices so we're going to spend some on it.
In our case we're using the "Bootstrap toolkit" to implement our app interface. Bootstrap is pretty awesome but it requires some deep diving into how they do things and it gets pretty complex when creating an app like EzInvoice Pro because there are a lot "parts" to manage when rendering it.
Our basic approach is to getting it working well on a small mobile phone because those are the toughest to get right. From there Bootstrap does a pretty good job of accounting for bigger screens and we can do some fine tuning for what's called "break points" in screen sizes. Break points are how Bootstrap decides to size and place elements (like buttons and inputs) on the user's screen.
The Bootstrap engineers have been working on this project since 2011 and they're currently at version 5.1.3. We're still using version 4.5 because the latest version just came out a few months ago and it breaks some of our layouts. We'll probably wait until next year to upgrade to Bootstrap 5 if there are enough compelling reasons to do that but for now we'll let them keep working on it to fix bugs and add features, just like we're doing with EzInvoice Pro.
EzInvoice Pro 7.8 Released
10/16/21, 2:49 PM
Here's what's new...
- Updated all the document templates to improve printing.
- Increased the number of item rows that will print on a single page.
- Improved the document designs and layouts
- You can now add a "Background Image" to your documents.
New Preferences: App Styles
- You can choose from 6 different styles for the app now, including a "Dark Mode".
Upgraded and Updated Reports
- We've updated the Chart.js software to the latest version.
- Expense reports have been completely rewritten.
Updated Documents App
- The code for this app was in need of some attention. There were functions trying to do too much and they got buggy. They needed to be broken down into several functions to make what they do clear, concise, and manageable.
Reduced the size of the app by over 10%
- This was basically more of a housekeeping chore than anything. I had some code libraries that were duplicated when working on new features and those features are finally fully integrated with the app. Still, that's a significant improvement.
The app is considerably faster now
- This is a result of a lot of small optimizations and a few bigger ones.
- At this point we'll be looking to fix any issues that we can find or users report and spending time working on new styles for documents and the "App Styles". We really just kind of roughed out those App styles and there's a lot more we can do with that. Same with the Document styles. I think we're on to something pretty cool here with providing easy ways for users to customize both the app and the documents you make with it. I'm excited to see what users do with those new document designs and background images.
EzInvoice Pro 7.8
10/4/21, 10:26 PM
Personalize the app and your invoices
I spent a lot of time working on the document templates to improve the layouts and printability of invoices and other documents. I also worked on tightening them up so you can list more products on a single printed sheet of paper and fixed a few mistakes that users pointed out.
Then I finally got to spend some more time on features that let you, the user, have some choices in how the app looks. You're probably familiar with "Dark Mode" apps that have black backgrounds so they use less battery power and are easier on the eyes at night. Now you can choose from 6 different styles that change the menu and background color to make the app more your own.
After a user, Wayne, in Illinois, suggested it I also added a way to let you upload a background image for your invoices, and that's really pretty cool.
The new invoice designs are all updated with a transparency that lets your document background images show through. So, you have play around with designing an image that works good with your invoices but, wow, they really stand out and provide a very professional look for you.
I also spent some time working on making updates more reliable and efficient. This is one of those things that has a "Specification" for how it should work, but the web browser makers still don't quite have it completely implemented but there are ways to "force" the web browser to update the files it needs.
I'll probably release the update to the app this weekend.
Also of note, on September 30 we had an issue with that prevented a few users from logging in. Me included. This issue has to do with "SSL Certificates" that websites use to securely encrypt you data when you login and in our case get and save and deliver your Invoices. It only affected those who have older devices they access the app with. I use an 11 year old Mac Mini and test the app with the Opera web browser and it popped up a message saying "Your connection is not secure".
The solution that worked for me is to use the "Firefox" web browser. Another solution is to get a new computer but my wife has a say in that so for now I'll just use Firefox. Here's an article that discusses this and has lists of devices and web browsers that work and don't work the SSL Certs we use.
It's Getting Personal Now!
9/19/21, 6:11 PM
A process of beautification...
Now I'm finally getting to work on adding some new features. One of those is "Themes". This feature lets you select from a list of different color themes for the menus and backgrounds on the app and, of course, that includes a "Dark Mode" theme which have been popular for some time now.
It also lets you upload a "Background Image" for the app to give it a look that's uniquely yours.
And you cal also add a background image for your Invoices and other documents to do the same. This feature was suggested by one of our longtime users and I think it's a great idea that will let make your invoices and other documents really stand out.
It will be a few more days before I release those updates. And speaking of updates, I've also spent time on making the updating of the app a seamless, fast, and reliable process that "just works". So this next update should just "appear" and you'll be able to use the new features as soon as I've release the update and you won't have to do a thing to make that happen.
Cleaning Things Up
9/15/21, 7:40 PM
A million little things
From May to the end of July I worked on fixing bugs that users reported, and there were a lot of them. That's something to be expected when you have an app with as many features as ezInvoice Pro. When I got all of those bugs fixed I moved on to making changes based on your feedback.
I've spent most of August cleaning up things. In software terms that means going over all your code looking for stuff you need to leave comments on to remind yourself what it does and/or why it's there. And tightening up code where you can do that, and deleting old code you've disabled but left in place so you could refer to it while you rewrote that bit for whatever reason.
Cleaning up also involves refining the design of the app. Mostly just small changes to clean up the "Look and Feel" of the app, and in our case especially on smart phones and tablets. These kinds of changes are important for users and a lot of them are inspired by user's suggestions and complaints. Most of them were needed because I was in a hurry when I put the screens together and was more concerned with function than design.
New email server is looking pretty good!
5/8/21, 3:24 PM
Almost all the major email providers have approved our emails for delivery!
So far the only large email provider that doesn't provide an option to verify our server is Charter.net. They require their email users to "approve" mail from a server with "No Reputation", which is what all new email servers begin with.
So, if you or any of your clients or customers use Charter/Spectrum Internet services for your email you need to follow their instructions on how to approve their email address.
Don't hesitate to contact me if you run into any issues. I need to know if you do.
As always, if you have any questions or comments, or need any help, just call or email us. We work for you and we appreciate that.
The new "ezInvoice.net" email server is alive!
5/7/21, 11:33 PM
The new ezInvoice.net email server is up and running and all the apps are now connected to it. That's good news, but it does come with some downsides.
As I mentioned in the previous post here it takes some time for a new email server "earn a reputation" for not sending spam. And as a double whammy since our server sends mostly "Invoices" it's going to get flagged for that too because spammers love to send bogus invoices with the hopes of someone sending them free money. And apparently it works well enough to keep doing it even though it's now a pretty old scam.
You're probably going to have to ask your customers to add this email address to their Contacts in their email app:
I'll be switching all the apps to use that "sent by" email address.
I apologize for this being such a hassle. On the plus side this email server should be good for years to come.
The old "ezeamailserver" has died...
5/6/21, 12:59 AM
First off, I apologize yet again for the downtime...
Here's the postmortem. We use a tool called "certbot" to automatically update our "SSL Certificates" that ensure the web site you're looking at is real and the data you send and receive is encrypted. They refused to issue a certificate for that old server. I've mentioned before that server was nearing it's end of life so I have been working on building a new email server but the hard part is getting an email server setup so the emails it sends get accepted.
It's has to do with how "IP Addresses" work. The new email server's IP address won't have any "reputation". This means we're all going to have to ask people to check their "Junk" or "Spam" folders and flag the Invoice emails "Not Junk".
Now, getting this all working is better than it was years ago, but still far from easy. We could pay a 3rd party like Google to handle all our emails, and they charge quite a bit for that, but they also have all your emails running through their system and they track everything that runs through their system and invoices are not something you want others peeking at they pass through their network. And the really tough part about that is they can decide to sell their business or merge with one or just shut down. We've dealt with all of those issues in the past.
The other problem we have is our old software will not run on the new servers. The backend technologies they use are being obsoleted now. This is why I've been working on the new "EzInvoice Pro" apps. I tried getting the old software running on a newer server but it just won't. It has obsoleted dependencies that the new servers do not support.
So, that's the crappy news. But there is good news, and really quite a bit of it. The new email server is state of the art and running like a fine watch. And the new EzInvoice Pro apps were built with the new standards so it was fast and easy to get those working with the new email server.
While working on this it occurred to me that what we really all need is an easy way to send your invoices using your email account, and I think I've come up with one. It will require web browser makers to add a feature and email clients to support it, but I think it may get some support if I point out why and what needs to be done. I did mention it recently in a very casual way and it did get some positive attention even though it was buried in a conversation with many others about other sort of new email technologies that attempt to make it easier for app makers and users but really don't move the bar much at all.
I'll tell you, it's rough figuring out how and when to implement these changes because they force users of software to change with them and I understand why they don't want too. I'll say this though... those old ezInvoice and Foxdesk apps have lasted a lot longer that any others I know of. Most of the code they run on is over 10-15 years old now and some of it's closer to 20 years old.
It's hard to say how things will change in the next 10-20 years but I think it's safe to say the new apps should still be running. They'll evolve as necessary but the tech they rely on has certainly benefitted from the years of work behind it and the tech is beginning to mature.
EzInvoice Pro 7.2 Upgrade Released
4/26/21, 11:21 AM
We completed the v7.2 upgrade to the web app on Saturday, April 24 and you should see it after you login and out a couple times. As always, if you find any bugs please let us know and we'll get right to work on fixing them.
EzInvoice Pro 7.2 Completed
4/19/21, 6:37 PM
We'll be releasing it later this week.
The last big task we had to complete was moving all the page formatting code from the app into the templates. Now we've got four new design templates for Invoices and other documents all working as they should. The new designs are a pretty big improvement over the old one but from here we can spend some time creating all new templates and really focus on design.
Another big goal was getting these new templates to print better. To do that we had to open an invoice for printing in a new web browser window to make sure the page design prints properly. As a bonus, this also improves displaying an invoice on a mobile device because you can view the entire page. It's tiny on a phone, but since the resolution is so high on those you can still see what the document looks like and you can zoom in on it easily too.
The new "Unpaid Invoices Report" is pretty cool too. This makes is super fast and easy to see who owes you money and to send them an email reminding them to pay up. It also makes it easy to find an invoice you want to enter a payment on.
Another handy new little feature is you can now print an invoice from the Invoice List screen.
You can click here to check out the upgrade now. I'll spend a couple more days testing the app and unless I find something that needs work I'll push the upgrade out later this week.
4/11/21, 11:19 AM
The new documents styles you can choose from now for invoices and other documents is really a huge upgrade from previous versions of ezInvoice. Version 7.2 introduces these but there's a lot more we can do now that we have this implemented.
I'm not a great page design artist but I've learned a few new to me tricks while working on this and I'm excited to be able to work on new designs. I think there are some things we can do with invoices that are emailed that can add some value for both you and your customers.
One of the things I'd like to do is let users design their own templates for their invoices. With that in mind I've been working on ways to make that as easy as possible. It's really not difficult right now but it can be made easier and I'm excited to work on that. Basically what I want to do is create a very simple design that can be used by anyone to get started and a simple "How To" video that shows how. From there I need to create a way to let users upload their designs and add them to the list of styles they can select from.
I'd also like to provide a way for professional designers to sell their designs to users. I am always amazed by great design work and I'd love to see what others can create and I think it'd be worth paying for a design that's unique and professional looking.
EzInvoice Pro v7.2 Coming soon
Updated 4/10/21, 11:19 PM
This upgrade adds the features we've described previously and lot's of small refinements that make the app easier to use and more productive.
We'll be releasing this upgrade before the end of April. I encourage you to check out the latest beta app and offer any advice you may have on improving it, and report any bugs or issues you run into.
Here's a list of new features:
- All New Printing Routines: When you print a document it's opened in a new browser window so it prints perfectly every time on any printer.
- Document Templates: You have 4 document styles to choose from now. But that's just the beginning. We can now start working on all new designs and adding them to the list of styles so you can choose one that's perfect for your business.
- Billing Reports: The new "Billing Reports" feature lets you list all your unpaid and partially paid invoices with just one click. It shows you the total billed and the balance due on every invoice you've made and has handy links to open the invoice to quickly add and update payment info, send a quick pre-filled email reminder to your customer, and open the customer's Contact record to add a note or call or email them.
New Billing Reports Coming Soon!
4/5/21, 10:23 PM
The new "Billing Reports" feature lets you list all your unpaid and partially paid invoices and gives you a link to open the invoice to make it easy to enter payments, open the customer's "Contact" record to give them a call or add a note to their contact record, and send an email to your customer to remind they they still owe you money. This report works hand in hand with the "Payments" screen for each invoice you create.
EzInvoice Getting Started Page
3/28/21, 8:35 AM
New Document Templates Coming Soon!
3/28/21, 8:29 AM
We're working on creating new documents styles you can choose from for your invoices and other documents. You'll be able to select your default style in your "Preferences" and select and change the style for each document you create.
This new feature will let us create styles for any kind of business and even let others create and share new styles.
All New Printing Routines Coming Soon!
3/28/21, 7:20 AM
There's a lot more to this new document templates feature than just letting you choose styles. We're also changing the way invoices are printed by opening up your invoice in a new browser widow or tab in your web browser.
After a lot of testing we've found this is, by far, the best way to do this. There's just too much going on in the "app window" to insure the invoice is printed like it should be and this change gives us fine grained control over the layout of the document to be printed.
The new invoice designs will be created with modern HTML and CSS and they'll be created to look good in print and email.
There's certainly room for improvement on both invoice designs and especially pagination for printed invoices but we've got a modern foundation to start building those improvements on now.
Introducing EzInvoice Pro
3/11/21, 1:45 PM
A truly modern web app.
EzInvoice was one of the very first "web apps", and probably the first. When we first made it back in 2001 we knew the biggest downsides were you couldn't use it offline and all your data was stored in a database on our web server. Over the past five years those issues have finally been getting some attention by both web browser makers and web app developers.
Now we can create web apps that run offline and store all your data on your desktop pc. That is huge! EzInvoice Pro is, once again, probably the first web app that can do this. It's taken a huge amount of work, and not just by us. Web brower makers like Google Chrome, Apple's Safari, and Mozilla's Firefox all had to work to implement the features on their side for app developers like us to do this. Right now there are a lot of crappy ways to try and do it. We know this because we tried them, but with Ezivoice Pro we took a different approach by leveraging the power and features of the CouchDB Database application that runs on most any desktop PC.
To use EzInvoice Pro offline and store all your data on your desktop PC you have to install the CouchDB Database application on your PC. When you do that the EzInvoice Pro app can run offline and you can use it just like you do online. The biggest differences are it's really is a lot faster because you never wait on the internet. So the app runs at near native app speeds on your desktop PC.
But there's more to it than that. You can also use it online "in the cloud". EzInvoice was, by definition, also one of the very first "Cloud Apps". It was from the very beginning, before they were called "Web Apps" and "Cloud Apps". This latest version implements "Live Sync" technology that you can turn on and off. When you turn it on all your data is synced up with our Cloud based CouchDB so you can use the app and your data anywhere you have an internet connection and a web browser.
It truly a huge breakthrough for how "Cloud Based" business software is made and used. It's way more powerful and way more secure and puts complete control and ownership of your data back in your hands.
That's pretty cool stuff.