Files
raven-client/ayanova/devdocs/todo.txt
2020-10-06 00:07:15 +00:00

501 lines
30 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@ ROADMAP STAGE 4 - REPORTING / DASHBOARD / KPI
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
todo: chunk-vendors has fa - brands in it which is fucking huge, what else is in there I don't need?
eradicate fa - brands!
Looks like I'm doing it wrong, I was using a generic NPM module when there is a Vue specific one that also has guidance to limit to just the icons I actually use:
https://github.com/FortAwesome/vue-fontawesome
This could be a big breaking change so need to do it carefully and all at once as it's own project
Definitely need to do though, it will save a lot of size to just include the actual icons I'm using which is a handful
GUIDANCE
See c:\temp\mytest project which uses the correct lib
https://github.com/FortAwesome/vue-fontawesome#learn-about-our-new-svg-implementation
https://stackoverflow.com/questions/52030435/fontawesome-with-vuetify-how-to-include-font-awesome-icons-within-the-v-icon-c/58261449#58261449
todo: Test file associations in attach icon correct after above
todo: login button can be obscured by footer, this should not happen try forcing margin below, footer maybe has a setting to confine it?
move the login button?
make sure enter works with it
todo: chrome "Lighthouse" test against devops and implement recommendations
particularly favor time to first
change .png to .webp
### SMALL QUICK ITEMS #####
todo: change logos from png to webp
check if webp is supported e2e and on report
todo: known issues has some efficiency settings for themes and good stuff to know, check it: https://github.com/vuetifyjs/vuetify/releases/tag/v2.3.0#user-content-known-issues
todo: new logos too small on large login, add a 3rd (large) size of logo to login form for xl size display
todo: is notifynewcount request double sending? It seems like it appears twice at the same moment in the log
todo: lodash, according to lighthouse it's vulnerable version and needs update
can I just remove it and replace the functionality with built in javascript methods now?
todo: libs outside of package.json, check if they are outdated or need updating or can be replaced / removed
todo: scaffold a new vue project with same options and see what it generates for all the config files etc
I might be missing some new stuff that needs to be in there in light of the webpack whitelist thing earlier
todo: Joyce issue report:
can't delete second report template
FYI - still getting same server log error when try to delete report templates - CAN NOT DELETE more than one report template per loaded instance of servers
1. via Administration -> Report Templates -> open a report template, select menu delete.
2. First instance of selecting to delete since server was loaded - DOES delete.
3. BUT if servers have been up since last deleted, when attempting to delete a second report template () will get the error message and rpot is not deleted.
3.b only way to delete rpt template is to shut down servers, reload, then perform the above steps to delete. THEN have to shut down servers again, load again, then can delete third rpt. And so on. - CAN NOT DELETE more than one report template per loaded instance of servers
xo
2020-09-28 11:15:48.9309|ERROR|NotifyEventProcessor|Ops problem notification: "Server API internal error, see log for more details"=>System.InvalidOperationException: A second operation started on this context before a previous operation completed. This is usually caused by different threads using the same instance of DbContext. For more information on how to avoid threading issues with DbContext, see https://go.microsoft.com/fwlink/?linkid=2097913.
at Microsoft.EntityFrameworkCore.Internal.ConcurrencyDetector.EnterCriticalSection()
at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChangesAsync(IList`1 entriesToSave, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChangesAsync(DbContext _, Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
at Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.DbContext.SaveChangesAsync(Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.DbContext.SaveChangesAsync(Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
at AyaNova.Biz.ReportBiz.DeleteAsync(Int64 id) in C:\data\code\raven\server\AyaNova\biz\ReportBiz.cs:line 213
at AyaNova.Api.Controllers.ReportController.DeleteReport(Int64 id) in C:\data\code\raven\server\AyaNova\Controllers\ReportController.cs:line 153
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Logged|12_1(ControllerActionInvoker invoker)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
todo: Direct report view URL doesn't work if already logged in due to code only being in login form
need to hijack the router before navigation to intercept special urls
https://test.helloayanova.com/widgets/499
localhost:8080/viewreport?oid=20000&rid=9
todo: attachment control drag and drop should work on both file list and also attach side of things
todo: wiki drag and drop image should automatically attach the image and do the linkup etc
todo: wiki image helper, if select ok but haven't selected a attachment it errors out, ok should not be available until there is a valid image selected
todo: attach files drag and drop helper should be expanded to include the selection tab, not just the list tab
todo: .webp type not available to wiki image helper when attached
this is because it's not identified as an image when it's a .webp extension
add to image types list for MIME
todo: notification subscription form tags control looks like ordinary tags control might confuse people that they are tagging that subscription
Maybe change the text to "Automatic filter tags" or "Only if tagged with"
todo: take a look at front end cypress testing etc again, it's going to be the best way to assure quality going forward and indespensible for smoke / load testing
See where it's at, is any of it usable?
todo: DataListFilter UI pretty shitty
error on duplicate
how to make a new filter?
todo: hide swagger logo and branding in api explorer
todo: Email notification sb link to edit subscription?
Might be handy to directly click and turn off a subscription from teh notification?
todo: v7 items .net final version update to if possible and feature request for search client notes direct open plus whatever is on the list
### MEDIUM ITEMS #######
todo: decimal-control and currency-control:
Fix currency and decimal input controls since after vue-currency update latest version get error ".$ci is undefined" when open a form with them on it
proposal: remove all need for vue-currency-input, see if can roll my own using intl code
or: fix the stupid error that has now crept in due to unneeded changes they made
## I'm downgrading to the last working version for now and will look into rewriting this to remove the dependency since it just uses Intl.NumberFormat behind the scenes
just like I'm doing with date and time inputs
NOTE: Last working version is "vue-currency-input": "1.20.3",
Plan: figure out if can ditch it as a dependency and if not then figure out how to work with it now as it's all different
### BIG ITEMS ###
todo: export from grid to xls, csv etc.
I'm thinking perhaps also a secondary ability to make report templates that are actually intended for export to xls or whatever as an additional feature
but the easiest thing for people would be a straight export of grid data from grid, perhaps using the reportdata system since it pulls in all the bits needed for full data rather than just id links
https://www.npmjs.com/package/json-2-csv
From extensions?
(because it's a single or list thing)
DASHBOARD / KPI / BIZ METRICS
todo: DASHBOARD
- Joyce kpi / charts and graphs
- these cases:
https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/2024
https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/1974
- REPORTING / Printable, need to test render these same metrics graphs in reports
Need to confirm this as I go along, probably need to replicate the graphs at the server end...shit
could be images also but need to render somewhere
I guess a wrapper over the graphs so they can be called directly during server render as well as from vuetify at client
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@ ROADMAP STAGE 5 - FINALIZE ALL NON BIZ OBJECT SPECIFIC FUNCTIONALITY
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
todo: Much of this stage below needs TRIAGING, do that first.
Any real (corebizobject) shit goes to stage 7
todo: FRONT END ROADMAP RELEASES (Sept 23 2020 was put on hold as it appears vuetify is way behind so looking like post release but check again here)
look at what's coming on the radar before release in the big libs I'm using at front end as well, i.e. new vue or vuetify major release etc
I would really like to release without a huge new migration looming over my head post release with potential breaking changes
Vue 3.x is about ready now or very shortly: https://v3.vuejs.org/guide/migration/introduction.html#overview
"The Composition API is purely additive and does not affect / deprecate any existing 2.x APIs. I"
looks like I can switch to vue 3 without code changes, at least when it comes to composition api
Vuetify 3.x is lagging way behind vue 3.x and doesn't appear to be even close so
Put front end newification on hold until it all shakes out, looks like post release`
todo: "lighthouse" score? PWA test tool for certification?
todo: it would be *extremely* useful if we could run automated tests against the release ui with devops server
todo: See if this has a use: as an aside there is a relative time formatter available which might be handy
does locale aware things like "5 days ago" or "8 years from now" etc
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat
todo: MAPPING
getting a *lot* of request about this
https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/1816
maybe stage 7 or I guess could fake it for now, it's going to be known what will be needed
https://news.ycombinator.com/item?id=23722133
https://blog.mapbox.com/openstreetmap-a-global-map-for-worldwide-insight-4e041cbf1ec1
todo: can I support keycodes for saving in AyaNova and other shit that are the same as in v7 or as much as possible, i.e. ctrl-s to save (or whatever was defined)
watch out the report editor uses a bunch of hotkeys pre-defined
What v7 used to support:
f1 - help, case (Keys.Alt | Keys.X) //Close form, alt-w new workorder, alt-m new pm workorder, alt-q new quote, alt-c new client, alt-u new unit, alt-p new part, ctrl-alt-g grid criteria for development,
IMPORTANT / DO THIS: insert date and time (localized) as text anywhere with a key combo
https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/1514
todo: back and forward buttons when running without browser controls in application mode?
- wait and see on this one, as it will be likely outside of any particular form so not something to be baked in early necessarily
todo: GUIDED TOUR
- This is an important feature and at least get a basic one in there for starters and initial release
- This is a replacement for the tutorials and videos in v7 a
- Need to add that auto-pilot thingy that allows for guided tours in HTML apps
- Specifically it should at least have an ONBOARDING walk through of how to move around, enter data, get help etc. Not feature specific but usage specfic.
- Later I'll add feature specfic tutorials like how to make a workorder etc
todo: clickable urls
https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/1738
############### MAYBE STUFF OR STUFF ON HOLD / FUTURE ###############
(If get here and not doing it put it into a v.next case where appropriate or spec doc for future reference or just ditch it)
todo: consider feature to set server to always use a pre-set browser locale settings and not the ones in the browse itself
Scenario is user in another country but needs to login and work with central server?
server - wide
User specific
YAGNI / TTM?
REPORTING bits and pieces
- page breaks properly EXAMPLE NEEDED
this is the current CSS property, not the one jsreport was using: https://developer.mozilla.org/en-US/docs/Web/CSS/break-before
There are many options including ones for columns and some to prevent page breaks splitting up blocks.
<div style="break-before: page;">
<h2>{{ Name }}</h2>
<div>Notes: <span class='example'>{{ Notes }}</span></div>
</div>
old jsreport ref: https://playground.jsreport.net/w/admin/dI2_fUqZ (for example this sample report shows <div style="page-break-before: always;"></div> which is interesting)
- print properties in css ref: https://www.tutorialspoint.com/css/css_print_references.htm
@page https://developer.mozilla.org/en-US/docs/Web/CSS/@page
- custom extra javascript functions EXAMPLE NEEDED
actually there's nothing really to this, just define function outside of the prepare block and it's there to use
- Mailing labels
if a hassle can skip, it's an unusual thing probably today and users could export to open office then print or whathaveyou
- Alternate paper sizes A4, Letter etc
https://developer.mozilla.org/en-US/docs/Web/CSS/@page/size
Also note that can pass on pdf render options to the puppeteer pdf rendering code which include
http://www.puppeteersharp.com/api/PuppeteerSharp.PdfOptions.html
- Helper for datalist filter human readable
also useful for the UI of the datalist as well
- readable errors:
https://stackoverflow.com/questions/56959242/how-do-i-get-readable-browser-page-errors-out-of-puppeteer-sharp
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@ ROADMAP STAGE 6 - INSTALLER, LICENSING, ROCKFISH SUPPORT FOR RAVEN
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
todo: WINDOWS INSTALLER
Runner harness wrapper thing?
even if windows only
it could modify config since it's outside the server
check for Postgres server extant and if not automatically start the standalone postgres instance
manage postgres start and stop and configuration changes, sit in tray, run AyaNova server from there?
easy way to select command line params without resorting to editing text files for end user
initially it's an installation option, but then need to edit after the fact
Quick check of installers available still and is it still kosher to keep using INNO setup or is something better, more supported by windows etc?
Wix if want MSI (some say that's desireable)
INNO is still relevant
I don't need hardly any requirements that can't just be copy or unzip deployed so maybe don't even need an installer for now?
(zip distribution is going to be problematic with Windows file protection shit)
https://docs.microsoft.com/en-us/dotnet/core/deploying/
https://docs.microsoft.com/en-us/dotnet/core/rid-catalog
Completely packaged and installable. REady for users to install as a test as I iterate stage 7 below
All the stuff needed for someone to run it as a test without the real objects yet.
Some kind of expiring license so they can't just keep using it as fucked as it may be some might do that
I want short targetted testing only, not someone downloading and trying it out a month later, that's useless for us
This needs to be focused on what I need to get from people about testing
todo: LINUX INSTALLER
Linux users don't mind doing the manual config thing as much, they're used to it and it could just be a shell file anyway
So mainly this would be a documentation steps to install type issue
todo: DOCUMENT DOCKER
Present dockerfile maybe for docker installation with FILES folder pre-ready to build / run
Whatever docker needs
Or maybe private registry with docker images on our servers somewhere
todo: rockfish, can't do purchase for raven or view it I think
Test a whole sales process from eval to purchase and make it work
todo: rockfish, upgrade to latest bootstrap, out of date Currently
todo: rockfish, trial license fetched On date not updating? (not showing in UI)
todo: Joyce rockfish notes:
Licensing:
noticed that the field "Fetched on" is NEVER updated.
is it much to be able to see the TIME as well as the DATE, when "Requested" and when "Processed"?
There are drop down selections NEW, APPROVED, REJECTED for the (already generated) listed keys. But can not actually save to a different Status. What is the purpose of the drop down options if can not select?
todo: Discourse bootstrapping install
look over, get ideas make case steal ideas profit FTW$
https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md
//here is their standalone config yml definition for DOCKER
https://github.com/discourse/discourse_docker/blob/master/samples/standalone.yml
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@ ROADMAP STAGE 7 - "REALITY"
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
All in on porting over all the real objects from v7
todo: First of all triage the features to port over in the sanest order so not stubbing too much stuff
Try to get scheduleable stuff early because schedule form will take some time
todo: Schedule form
- new gold standard is Google schedule so emulate that amap
- This one is big but requires the data to be there so as soon as implement enough things that are scheduleable then do this
- printing / reporting
todo: Notifications
Many are on hold until there are real objects to code against, now is the time to code them as the objects are added
todo: can beta test at this point
post installer, enlist trial users get feedback, don't get too down when they shit all over it as they will undoubtedly :)
remember, it's for the new customers primarily, new customers = new $$
todo: Document in user manual all form controls with instruction on how to use the various controls etc
- "Anatomy of a AyaNova Form"
WORKORDER UI
todo: Investigate Workorder structure and datagrid see case https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/3768
Likely that workorder grids inside will not be full blown custom datagrid I wrote but just a vanilla v-data-table control since there is likely no need for the full customization shit
todo: workorder UI layout stuff (TTM!! Don't re-invent the wheel!)
There's been a lot of ideas about wo floating around and considered, but at the end of the day what I have works so maybe try to meld
into what I have the new concepts and see what comes out. Support a rich wo UI on big screens and scroll around UI on phone maybe.
some notes:
Workorder UI good ideas here: https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/3475
Basically (based on RI) it boils down to don't make the user go up to the workorder item level when they can go sideways directly to an alternate child of woitem
i.e. going from parts to labor shouldn't require going up a level
All workorder in one document and just really really tall? (people bitch about RI requiring too many navigation steps to get to shit)
Header and items in one document then bottom in seperate pages?
Is it going to be far easier to code this bitch if I have all the workorder data at hand or..?
How does WBI handle all this because it's kind of the poster child for RAVEN
Workorder is one of those things that may require different views for phone and tablet and laptop etc
Kind of like two views, tiny phone and anything larger
On a PC people will want and expect it to look as much like v7 workorder as possible, maybe that's still a valid layout
just tweaked to work better as a web app a bit but theoretically I could almost duplicate that layout with the tools I have
Consider UI in this as well, will need to decide at least what is visible when
Workorder UI good ideas here: https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/3475
How to add items, like new woitem?
send to server get back new object?
lots of biz rules and stuff need to happen, want to minimize load at client
but lots of data back and forth is not ideal
maybe request a woitem and get it back?
what exactly needs to be processed in the wo when items are added / removed?
math / totalling?
simple calcs sb client doable
this will drive what has to happen.
Need to go over all wo features and factor them into this decision properly
The whole idea of a completed section of a wo and stuff, is that dropped due to TTM or still viable?
maybe can pick out the best new features of that which can be integrated into existing design rather than re-inventing the wheel
Here is an overview: https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/3412
How best to be able to service LoanUnits on a workorder?
Just make them Units with extra properties exposed if type of loaner?
This seems simplest, but what will it effect?
Hard to make them serviceable if they are an alternate table of source for what's being repaired as that breaks a lot of other code or adds exceptions
Customer is then who exactly because it's fundamental to a lot of wo functionality?
from a biz perspective isn't it like you are your own customer when you service your own equipment that you loan out?
Does Serial field need to be numeric, could it be text instead?
prompted by case 3428 saying that it's hard to deal with constant conversion to text for UI etc
plus, I'm thinking it opens door to textual scheme like appending -A or whatever to a wo.
or, is that a display issue?
Calling something "serial" implies it's unique but it isn't, maybe I should call it "number" instead or "ID" or something?
INFO: did a test workorder with ALL fields filled out heavily and one woitem, exported from db entire graph based on detailed report so every line was every item repeated
still only 84kb and it's a lot bigger than any typical wo in v8 would be as it will be far more efficient without having to repeat lines flatly
so I think size of object is a non-issue really from a practical standpoint.
UI
idea: UI reflects tentativeness state of object:
The UI doesn't imply something is done by changing it fully until the save is completed.
This serves two purposes:
1) user knows at a glance what isn't saved yet and will know it's waiting for save clearly, hopefully leading them to save more often,
2) client doesn't need to track invisible shit behind the scenes, can more easily do patch updates right off UI source
e.g.:
if deleted a row in parts, that row doesn't disappear but rather shows crossed out, maybe grayed out but still there until save to indicate it's tentative status
if added a row, shows green or something or bold or asterisk, (can style with css based on state) until saved
problems:
how to handle regular fields that are changed (that's a lot of field data to track for changes)?
Maybe client keeps a virgin copy of the original wo for comparison
periodically does a compare and flags differences on updates?
(this would also help to serve as an Undo maybe?)
todo: Documentation
Need to think this through carefully
Need to get the critical bits in for onboarding and importing so people can get going
Most important stuff is anything non-obvious
Seems pointless to have one doc per form that just says "The name field is the name and must be unique"
maybe have that kind of stuff in the form basics and then have a doc per OBJECT instead with anything unique or interesting about the object
(and each object form has a link to formbasics so can link to the object form from UI and they get both)
Parts of it can be done post-release for sure
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@ ROADMAP STAGE 8 - EXTENSIONS (was plugins)
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Plan the order of criticality for extensions
ACCOUNTING is obviously the first and foremost one and MUST be there for a lot of people to take up
MUST be done in a way to support other alternative accounting apps that are coming around now like freshbooks or whatever it's called that Joyce is using now
probably going to need a "trick" of some kind to interface with desktop accounting
i.e. a local windows app that uses the api and just copy over the qbi code
or a local server that has it's own web interface
or regular raven UI but the accounting section interfaces with a local server for local desktop qbi stuff and
the raven server interfaces with QBOnline for the QBOI stuff
based on sales, how many subscribed now
which ones are porting and which are not
Implement in order or priority
Fuck peachtree?
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@ ROADMAP STAGE 9 - RELEASE
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
todo: ARCHIVE ALL DEPENDENCIES
Get all code for all 3rd party libs used for front and back of AyaNova 8
Need to store that in an archive somewhere just in case
Needs to be done with each release so can go back to that if necessary
Going to be big, maybe archived to all storage drives locally and burned to a dvd?
If check into the repo it will be an issue probably but you never know
TODO: CSP Policy that should be enabled at server?
I had to add per this: https://docs.telerik.com/kendo-ui/troubleshoot/content-security-policy#content-security-policy
to my csp because I kept getting errors in client end debug console mentioning csp issues
this seemed to come after I updated the client build process to do a legacy and modern build but I'm not 100% sure about that
Assuming has passed all testing
Plan pricing and sales strategy
What to do with licenses for v7 people
Another payment processor?
support bitcoin if possible as well
Send a tip / buy a coffee link to the graphic designer who made the rabbit logo
follow the link from the docs appendix open source acknowledgements page
if we use it in release we should at least send them the small amount they get tipped
@@@@@@@@@@@@@@@ ROADMAP STAGE 10 - ROCKFISH / HOSTING BACKEND SELF SERVER READINESS
DO server allocation, rockfish revamp to drive this part (or maybe it's an alternate app)
https://blog.digitalocean.com/its-all-about-the-bandwidth-why-many-network-intensive-services-select-digitalocean-as-their-cloud/?utm_medium=email&utm_source=do_newsletter&utm_campaign=04292020
https://www.youtube.com/watch?v=zZVoo5AbANI
@@@@@@@@@@@@@@@ ROADMAP STAGE 11 - RELEASE SELF SERVE / HOSTING
Fall of 2020 hopefully
links on website for sign up
marketing can begin in earnest
NOTE: HOSTING cases are all moved to priority 2 and most have "HOSTING" in the title tags
todo: Administration - Account
Down the road will need an Account page for seeing their account status in rental SAAS situation
Nothing to do here, it's an obvious one, just delete this later, it's to percolate in brain a bit
maybe under license
MARKETING
Analytics alternatives to Google:
https://news.ycombinator.com/item?id=24198329
Also very nice screen shot effect:
https://umami.is/
Created by:
dom96 2 hours ago []
Nice! Question for you, how did you make that nice 3D image on the front page with various screenshots overlaid over each other? :)
reply
mcao 2 hours ago []
It's all done in Photoshop. Just take screenshots, then transform, rotate, distort them to look flat. Then add some drop shadows for a 3d look.
reply