Statistics
| Branch: | Revision:

root / dev-notes.txt @ 52:0c5b97d26063

History | View | Annotate | Download (2.7 kB)

1
A few development notes while working on this project
2

    
3
[0] Master XUL Reference
4

    
5
		* https://developer.mozilla.org/En/XUL
6

    
7
[1]		Javascript Development
8
		May need to use a javascript framework for:
9
		*		 better code organization
10
		*		 whichever other utilities present (e.g. JSON)
11
		Possible candidates are:
12
		*				 jQuery [http://jquery.com/]
13
		*				 Dojo [http://www.dojotoolkit.org/]
14
		*				 ExtJS [http://extjs.com/]
15
		
16
		jQuery integrates well with Firefox extensions and is licensed as MIT/GPL.
17
		For widgets, an external library [http://jqueryui.com/] is present.
18

    
19
		Dojo has a rich set of widgets but there is evidense of not integrating well
20
		with Firefox extensions. Licensed as BSD.
21

    
22
		ExtJS is commercial.
23

    
24
[2]	Useful Firefox Extensions
25

    
26
		* Console2 [https://addons.mozilla.org/en-US/firefox/addon/1815]
27
		HomePage @ http://console2.mozdev.org/
28
		Much better Javascript console
29

    
30
		* Dom Inspector [https://developer.mozilla.org/En/DOM_Inspector]
31
		Very useful viewing the DOM hierarchy of XUL windows.
32

    
33
		* Extension Developer [https://addons.mozilla.org/en-US/firefox/addon/7434]
34
		Provides a wealth of tools, such as
35
				* interactive JS shell,
36
				* HTML editor
37
				* XUL editor
38
				* live preview
39
				* regular expressions tester
40
				* XPath tester
41
				* extension packaging utility
42

    
43
		* CCK Wizard [https://addons.mozilla.org/en-US/firefox/addon/2553]
44
		HomePage @ http://www.mozilla.org/projects/cck/firefox
45
		Helps creating an extension.
46
		Lots of features.
47

    
48
		* Firefly [http://firefly.mozdev.org/index.php]
49
		A File Manager
50
		--> Use ideas for code that handles local disk access
51
		--> 
52

    
53
[3] UI Considerations
54

    
55
		* Extend the GWT interface to use one more pane for local disk
56
		This is classical IExplorer functionality
57

    
58
		* Use ideas from tools like
59
			* Midnight Commander [http://www.midnight-commander.org/]
60
			* muCommander [http://www.mucommander.com/]
61

    
62
[5] Extension examples
63

    
64
		* http://kb.mozillazine.org/Getting_started_with_extension_development
65

    
66
[6] xulrunner
67

    
68
		* Getting Started with XULRunner
69
			https://developer.mozilla.org/en/Getting_started_with_XULRunner
70

    
71
[7] RFC2104
72

    
73
		* HMAC: Keyed-Hashing for Message Authentication
74
			http://www.ietf.org/rfc/rfc2104.txt
75

    
76
		* Javascript implementation (BSD License)
77
		  http://pajhome.org.uk/crypt/md5/scripts.html
78
			http://pajhome.org.uk/crypt/md5/jshash-2.2.zip
79

    
80
[8] Native File I/O
81

    
82
		* https://developer.mozilla.org/en/Code_snippets/File_I%2f%2fO
83

    
84
[9] How to fix name collisions in Mercurial
85
		I need that durin dev :-) Take a look at changesets 21:53c52498e7c2 & 22:f4b0d0a342e5
86
		* http://mercurial.selenic.com/wiki/FixingCaseCollisions 
87

    
88
[10] Plugin auto-update
89
		 * http://www.borngeek.com/firefox/automatic-firefox-extension-updates/
90
		* https://developer.mozilla.org/en/Extension_Versioning,_Update_and_Compatibility