This week qualifies to me as very productive. The start of the week was 
very frustrating as all options I tried ended up with frustration as none 
of them had support with what I needed. 
My task for this week was simple, to find a JavaScript library that could 
be used for the basic editor in the netjsonconfig-editor library, since the 
library I earlier intended to use for this (
https://github.com/Limenius/liform-react)  didn't have support for various 
features I needed for the editor. This library did not support features 
like oneOf, allOf, enum_titles. 

some libraries I tried out include:

   - https://github.com/mozilla-services/react-jsonschema-form
   - brutusin.org/json-forms/
   - https://github.com/json-schema-form

however all of these options lacked support for the same features i 
required above. This left me with one option, to make the choice of library 
from the various options above. I finally decided to go with the 
liform-react library( the original choice). This decision was made based on 
ease of implementation for me, support from the community, repo activity 
and ease of integration. 
     I used the last three days of this week to implement the support for 
oneOf,  allOf, and enum_title. This was after spending close to two days 
just understanding the code base and structure of the library. I got into 
communication with the author of the liform-react lib, @nacmartin 
<https://github.com/nacmartin> while I was contributing to the repo. So in 
summary this week what i did was:

   1. Clone all the libraries mentioned above(including liform-react and 
   excluding the last)
   2. Went through the various lib source codes to understand how easy it 
   would be to implement features
   3. created issues on the various repos in order to start a conversation 
   with the various authors and see how best to approach the issue (of which 
   only @nacmartin replied)
   4. Went deep into the liform react library and understood the code and 
   structure of the project
   5. Added support for oneOf, allOf, and enum_title to the library.
   6. Submitted a PR to the repo for the new features to be added. 
   https://github.com/Limenius/liform-react/pull/11
   7. Used times of frustration to read about json-schema, to know if I am 
   missing anything. This actually helped me a lot to cover many scenarios 
   while adding the features.

Overall this week has been very productive for me as in the end, after all 
the stress, extra hours and frustration I finally implemented the library 
features i needed. 


Happy weekend to you all.

-- 
You received this message because you are subscribed to the Google Groups 
"OpenWISP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to