Giter Club home page Giter Club logo

peace-and-protection's Introduction

Wiki Themes English Turkish Dutch

What is PnP?

Peace and Protection (PnP) is a collection of scripts that enhances mIRC, a popular windows IRC client. PnP allows the user to set options by means of dialog boxes and popups. PnP also comes with various addons and a slew of custom commands. It has everything a beginner, advanced or expert mIRC user needs.

This script is coded by pai. She left the scene many years ago never to return. PnP is part of her legacy.

Installing PnP

Follow these steps.

Improvements

  • PnP 4.22 is vulnerable to remote code execution. (flash alias) This has been fixed.
  • PnP 4.22 opens custom windows with the -h flag. In newer mIRC versions that translates to using the -w0 flag.
  • Many smaller bugs have been found and fixed.

Languages

Pai left instructions how to translate PnP. Have a look at the comments in this file: script\trans\english.ini Please email us your translation file!

Currently PnP has translation support for the following languages:

  • English
  • Turkish
  • Dutch

Further development?

Pai had to change priorities and most likely will not continue working on PnP. Because PnP is Pai's work and something she was very proud of, and the fact that she's probably not coming back to work on it, the script will not evolve beyond what it is.

Mission statement

We will attempt to fix the bugs that come along and try to make it work, but there will be no new features. If we add something or make a new feature it will be released as separate downloadable addons, but it will not be shipped with the main script archive.

More information

Check out the wiki or the themes repository.

peace-and-protection's People

Contributors

acvxqs avatar solbu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

peace-and-protection's Issues

RAW 265 and 266 - Filling %::users and %::value for theming purposes

/debug @SwiftIRC (what PnP expects)

<- :light.wa.us.SwiftIRC.net 265 kapot2 :Current Local Users: 1549  Max: 16258
<- :light.wa.us.SwiftIRC.net 266 kapot2 :Current Global Users: 1549  Max: 16258

/debug @freenode (what PnP currently can't handle)

<- :cherryh.freenode.net 265 kapot2 5363 6857 :Current local users 5363, max 6857
<- :cherryh.freenode.net 266 kapot2 88497 93467 :Current global users 88497, max 93467

Propose the following fix for RAW 265 and 266 in rawdisp.mrc

From:

raw &265:*:{ set -u %::users $5 | set -u %::value $7 | raw.theme 265 $color(norm) $2- | halt }
raw &266:*:{ set -u %::users $5 | set -u %::value $7 | raw.theme 266 $color(norm) $2- | halt }

to:

raw &265:*:{ set -u %::users $iif($5 == local,$2,$5) | set -u %::value $iif($5 == local,$3,$7) | raw.theme 265 $color(norm) $2- | halt }
raw &266:*:{ set -u %::users $iif($5 == global,$2,$5) | set -u %::value $iif($5 == global,$3,$7) | raw.theme 266 $color(norm) $2- | halt }

Wondering if there's a better solution...

mIRC sets $numeric == 0 for non-numeric raws causing PnP to display no/strange output (for example on raw AWAY:*:{})

PR #39 brought this to our attention.

Maybe $numeric returned something else 18+ years ago when PnP was developed. If it returned for example $null in the past, PnP would not fire on those raws... Asking Khaled if that's the case:
https://forums.mirc.com/ubbthreads.php/topics/266726/raw-away#Post266726

See code: https://github.com/solbu/Peace-and-Protection/blob/d225fc3c94e93f842ded416736c52755feac8185/script/rawdisp.mrc#L1651-L1667

AdiIRC Enahncement

Hello is there a way to be able to run PnP latest version using AdiIRC IRC Client it runs all mIRC snippets/scripts/remotes so basically is a mIRC version but with a 2016 GUI and alot of options ... i`v tried to load it but seams that PnP is checking for the version as AdiIRC is only at version 2.4 but its constantly updated and its a 2016 IRC Client PnP will give errors on load that version is not matching here are the examples

for both releases latest and 4.22

[01:08:43] * Loaded script 'C:\Program Files\AdiIRC\script\first.mrc'
[01:10:12] * /hmake: table 'pnp.startup' exists (line 40, first.mrc)
[01:10:12] * Loaded script 'C:\Program Files\AdiIRC\script\first.mrc'

[01:08:43] Peace and Protection requires mIRC 7.43 or later to run! (you are using 2.4)
[01:08:43] Peace and Protection requires mIRC 7.43 or later to run! (you are using 2.4)

i`v loaded partial scripts from PnP and they are working / as i am a PnP script runner since almost 8/9 years i would love to be able to load/use it with AdiIRC ...as mIRC is using the same GUI since i know it and its a PAY irc client AdiIRC its a free and open source irc client that is much better then mIRC in my opinion !!! thank you in advance

here you can find what adiirc has/or not regarded with mIRC regarding script commands !!!
https://dev.adiirc.com/projects/adiirc/wiki/Scripting_Commands

thank you in advance !!!

File created: -d pnp.mts 303 in %appdata%\mIRC

Steps to reproduce error:

step 1: /timer.test 0 1 if ($isfile(-d pnp.mts 303)) echo -a File exists!
step 2: /textsch
step 3: click Edit script button
step 4: in the edit box, add dummy alias: alias hello { echo -a hello }
step 5: press the OK button

Quick overview of where things go wrong:

L1633 - newtheme.mrc - alias page.apply
if (%found) hadd mts.edit Script -d pnp.mts 303

L2067 - newtheme.mrc - alias theme.save
%script = $hget($3,Script)

L2136 - newtheme.mrc - alias theme.save
if (h isin $1) write -il1 " $+ %script $+ " ; #= P&P.theme -rs

channel mode +r / s_err / Whois nickname

i just found that joining a +r(only registered/usernames) allowed to join the channel is wrong !!! in irc networks that dont use nick registration the Message IS WRONG saying users that channel is +r +R Registered Nicknames only !!! and wont reffere to a webpage that the ircd source its sending !!!
[00:07:20] *** [cannot] join channel- You must have a registered nickname (mode +R) and the server notice its setup to send the error message like this *** [cannot] join channel- You must have a registered username (mode +r) visit http://website.com/username-registration.php

and another on in Whois Replies !!! when you set show Nickname and check "on first line only,but line up the remaining lines !!

the setup as in Old version should Show nickname in the first line then hide/add the same color as mIRC background to hide nickname in the others lines !!! now will show the nickname in First Line ITS OK but then will BOLD the nickname in the next lines and change the whois color settings from PnP Color Theme into mIRC Color theme !!!

/config 24 - Removing a channel in Config > Options > Channel options

When removing a channel in Config > Options > Channel options, the channel is removed from the list box, however upon clicking OK on the page to confirm and upon returning to Channel options, the channel is still listed.

Cause: the associated hash item (chopt.#channelname) in hash table pnp.config is not removed.

EZ-ping Addon: PNP reacts to phrases like "helping me" or "stopping me"

Describe the bug
A clear and concise description of what the bug is.
PNP defines three standard phrases:

  1. !ping
  2. ping pl
  3. ping me

To Reproduce
Steps to reproduce the behavior:
Install EXTRAS.PPA and enable ezping. Someone types a sentence with "helping me" or "stopping me" in it and ez-ping reacts.

Expected behavior
A clear and concise description of what you expected to happen.
The above scenario are two false positives.

Screenshots
If applicable, add screenshots to help explain your problem.

Please complete the following information:

  • mIRC version: 7.64
  • PnP version: 4.22.9

Additional context
Add any other context about the problem here.

else _loadepp !ping,ping pl,ping me

if ($gettok($hget(pnp.config,ezping.phrase),%num,44) isin $1-) {

Restore pai's old code in last.mrc + ptm

https://github.com/solbu/Peace-and-Protection/blob/master/script/last.mrc#L1498

Restore code from:

on &^*:OPEN:?:*:_ssplay Open | if ($mid($hget(pnp.config,flash.opt),$iif($hget(pnp. $+ $cid,away),2,1),1)) flash $chr(91) $+ Query- $nick: $strip($replace($1-,$chr(32),$chr(160))) $+ $chr(93)

to:

on &^*:OPEN:?:*:_ssplay Open | if ($mid($hget(pnp.config,flash.opt),$iif($hget(pnp. $+ $cid,away),2,1),1)) flash $chr(91) $+ Query- $nick: $strip($1-)  $+ $chr(93)

This considering we fixed the double evaluation exploit in alias1.mrc - flash alias - using the new $unsafe identifier.

Note-to-self: Also in .ptm file!

Translation - typo

script\config.mrc - L1013: Typo found:

 if ($readini(script\transup.ini,n,translation,enabled) == no) {
    did -ra $dname 524 This installation of PnP does not currenlty support translation. You may download a version that supports translation at www.kristshell.net/pnp/.
    did -b $dname 520,521,522,523,527,528,525,526
  }

script\upgrade.mrc - L20: Typo found. Also $readini(...,language) ought to be $readini(...,enabled)

alias translate {
  if ($readini(script\transup.ini,n,translation,language) == no) {
    dispa This installation of PnP does not currenlty support translation. You may download a version that supports translation at www.kristshell.net/pnp/.
    halt
  }

Tab spaces (position) in custom windows

I propose the following changes to tab spaces in the following files:

banlist.mrc

Line 20 - from:

_window 2.6 -nhlvk -t3,30,39,50 %win -1 -1 -1 -1 @banlist

to:

_window 2.6 -nhlvk -t3,120,160,200 %win -1 -1 -1 -1 @banlist

Line 254 - from:

else _window 2.7 -slzk -t10,25,40 @Blacklist $_winpos(8,12,10,10) @Blacklist

to:

else _window 2.7 -slzk -t40,120,160 @Blacklist $_winpos(8,12,10,10) @Blacklist

dcc.mrc

Line 128 - from:

else _window 2.7 -lizk -t30 @DCClist $_winpos(8,12,10,10) @DCClist

to:

else _window 2.7 -lizk -t120 @DCClist $_winpos(8,12,10,10) @DCClist

Line 225 - from:

_window 2.3 -lnzk $+ $iif($_cfgi(dccqueuehide),h) -t15 @DCCQueue -1 -1 -1 -1 @DCCQueue

to:

_window 2.3 -lnzk $+ $iif($_cfgi(dccqueuehide),h) -t40 @DCCQueue -1 -1 -1 -1 @DCCQueue

info.mrc

Line 18 - from:

_window 2. -hlnv -t13,24 @Clones -1 -1 -1 -1 @Clones

to:

_window 2. -hlnv -t40,80 @Clones -1 -1 -1 -1 @Clones

Line 280 - from:

_window 2.6 -lv -t25,30,35,40 @ServerDetails -1 -1 -1 -1 @ServerDetails

to:

_window 2.6 -lv -t40,80,120,160 @ServerDetails -1 -1 -1 -1 @ServerDetails

Line 437 - from:

else _window 2.6 -lkv -t16,22�+l %win $_center(350,350) @Ports

to:

else _window 2.6 -lkv -t40,80�+l %win $_center(350,350) @Ports

userlist.mrc

Line 251 - from:

else _window 2.6 -slzk -t10,35,40,50 @Userlist $_winpos(8,12,10,10) @Userlist

to:

else _window 2.6 -slzk -t40,120,160,200 @Userlist $_winpos(8,12,10,10) @Userlist

Summary:

banlist.mrc - L20 -t3,120,160,200 (banlist)
banlist.mrc - L254 -t40,120,160 (Blacklist)

dcc.mrc - L128 -t120 (DCClist)
dcc.mrc - L225 -t40 (DCCQueue)

info.mrc - L18 -t40,80 (Clones)
info.mrc - L280 -t40,80,120,160 (Serverdetails)
info.mrc - L437 -t40,80 (Ports)

userlist.mrc - L251 -t40,120,160,200 (Userlist)

Conclusion:

Looks much better, also still fits nicely on a 1024x768 resolution screen.

What do you reckon @solbu and @craze?

HOTLINK

OS: Win 7(x64) mIRC: 7.51 Pnp:4.22.7

Hello iv just updated mIRC/PnP and since then HOTLINK doesnt work anymore, hotlink beeing web links/#channels are not double clickable anymore iv tried to search in mIRC`s option and PnP nothing solved the problem maybe its something that has to do with the new FIX from mIRC version 7.51.thank you in advance.

as a test, i`v just downgraded mIRC version back to 7.49 and now HOTLINK works. mIRC 7.51 without PnP also works great.

; Dispw- active or status based on raw configuration; uses Echo

I believe else is erroneous in the below aline... line 2792 newtheme.mrc

; Dispw- active or status based on raw configuration; uses Echo
aline @.themeals dispw else $reptok(%echo,--,$hget(pnp.config,rawroute) $+ qt $iif(a isin $_cfgi(rawroute),$!iif($activecid != $!cid,$:anp)),1,32)

addon.mrc - /addon c|u|h

L116 & L243 & L250

if ($istok($hget(pnp,addon.ids),$readini(%addon,n,addon,id),32) == $null) _error That addon is not installed!�Restart PnP if you are having problems.

Ought to be:
if ($istok($hget(pnp,addon.ids),$readini(%addon,n,addon,id),32) == $false) _error That addon is not installed!�Restart PnP if you are having problems.

When loading a (dark, i.e. not-white) theme, the background and text colour for the Treebar is not updated...

Describe the bug
A clear and concise description of what the bug is.

When loading a non-white-background theme, treebar background is not updated...

To Reproduce
Steps to reproduce the behavior:

  1. Load theme 'dusk by acvxqs' from the themes branch in the github repository.;
  2. Click OK.

Expected behavior
A clear and concise description of what you expected to happen.

Make the background of the treebar section the same colour as the status, channel windows and nicklist.

Screenshots
If applicable, add screenshots to help explain your problem.

image

Please complete the following information:

  • mIRC version: 7.61
  • PnP version: 4.22.9

Additional context
Add any other context about the problem here.

on changing lang

I've got error on translations.

stuck at 48%

english -> turkish

Invalid format: $evalnext (line 166, translate.mrc)

pnp v. 4.22.8
mirc v. 7.54

Confusing P&P tag on first line in LASTSEEN.PPA

Looked at the code and I don't believe the name part of the tag matters, but it seems the existing name part of xwzbot belongs to another addon (addons\xw.ppa). For clarity's sake, I'll reset the name part from:
; #= xwzbot -rs
to:
; #= pplastseen -rs

Splashscreen not showing on startup

window -h command has changed to window -H

Change first.mrc - line 152 from:

window -pfarodhkBz +bdL @Startup $int($calc(($window(-1).w - 250) / 2)) $int($calc(($window(-1).h - 350) / 2)) 2

to:

window -pfarodHkBz +bdL @Startup $int($calc(($window(-1).w - 250) / 2)) $int($calc(($window(-1).h - 350) / 2)) 2

alias _progress.1 - Progress update custom window not showing

Old mIRC version window -h command has changed to window -H

Change window.mrc - line 394 from:

window -pfdohkaBz +bLt @Progress $calc($window(-1).w - 330) $calc($window(-1).h - 160) 319 104

to:

window -pfdoHkaBz +bLt @Progress $calc($window(-1).w - 330) $calc($window(-1).h - 160) 319 104

Opening of Theme Central - If ($dialog(pnp.mts)) { make dialog visible, check item in listbox and show that page }

L102 - newtheme.mrc

 elseif ($dialog(pnp.mts)) {
    dialog -v pnp.mts
    if (($1 isnum) && ($gettok($did(501,$1),1,32) != $null)) {
      did -c $dname 501 $1
      page.show $1

ought to be:

 elseif ($dialog(pnp.mts)) {
    dialog -v pnp.mts
    if (($1 isnum) && ($gettok($did(pnp.mts,501,$1),1,32) != $null)) {
      did -c pnp.mts 501 $1
      page.show $1

This doesn't resolve the issue. Further down find that pnp.mts needs to be specified as well.

*** Server does not recognize YOU command

If no favorites, then upon clicking PnP > Favorites > Join on connect, it returns with an error: *** Server does not recognize YOU command.

Line 148 - favorites.mrc

if ($_cfgx(favopt,$2) == $null) You don't have any favorites for $2 $+ .

ought to be:

if ($_cfgx(favopt,$2) == $null) dispa You don't have any favorites for $2 $+ .

Error during 'Verifying script order'

mIRC 7.44 and PnP 4.22.6 gives this on startup:

*** Performing PnP startup... (profile - default)
*** Error during 'Verifying script order'
*** Addons loaded- ChanServ NickServ Extras Sound
*** Startup completed in 1.217 seconds

Run Scripts though mSLDev - Multiple issues.

Remote code execution vulnerability upon pressing quick function key (spamblck.ppa)

Describe the bug
A clear and concise description of what the bug is.

Remote code execution vulnerability upon pressing quick function key (spamblck.ppa)

To Reproduce
Steps to reproduce the behavior:

* Install spamblck.ppa v1.00 (this is the original that is included with pnp v4.22.9)
* Configure it with the settings in the screenshot.
* Join #peace&protection on Quakenet
* Press the function key to view the blocked message
* Remote code gets executed! (In this case, one quits the network)

Expected behavior
A clear and concise description of what you expected to happen.

I would expect that the welcome message (notice) is displayed rather than code being excecuted.

Screenshots
If applicable, add screenshots to help explain your problem.

Settings spamblck.ppa
image

image

image

image

image

Please complete the following information:

  • mIRC version: 7.61
  • PnP version: 4.22.9

Additional context
Add any other context about the problem here.

This issue was reported by Nanoha.

The whole message is passed to the quick function alias, including pipes that are interpreted by mIRC. Any mSL syntax that follows a pipe is executed.
$unsafe is needed here.

Progressbar not showing during PnP installation

window command has changed. window -h has become window -H

Change dofirst.ini - line 123 from:

n8=window -pfdohkaB +bLt @Progress $calc($window(-1).w - 330) $calc($window(-1).h - 160) 319 104

to:

n8=window -pfdoHkaB +bLt @Progress $calc($window(-1).w - 330) $calc($window(-1).h - 160) 319 104

Cannot load on mirc 7.52

I got this error when i do /load -rs script\first.mrc

* Loaded script 'C:\Users\Ryzen\AppData\Roaming\mIRC\script\first.mrc'
* No such identifier: $_cfgi (line 825, first.mrc)

PnP version: v4.22.8

reroute.ppa - PnP not rerouting from correct network to correct network

Describe the bug
A clear and concise description of what the bug is.

When setting up a reroute between different networks using the dialog (/rrset) , PnP errors in using the wrong network names...

To Reproduce
Steps to reproduce the behavior:

  1. Example, I'm on 4 networks. Pick a channel on a network and type /rrset in the channel.
  2. Dialog:
    image
    Result:
    image

Expected behavior
A clear and concise description of what you expected to happen.

I expected that it would reroute from #roadrunner Quakenet to #roadrunner Mircscripts...

Screenshots
If applicable, add screenshots to help explain your problem.

See above.

Please complete the following information:

  • mIRC version: 7.61
  • PnP version: 4.22.9

Additional context
Add any other context about the problem here.

In the init event for dialog rrset, PnP does logic on network id in a while loop and builds a reverse connection id list in a hidden listbox. ($did == 30). The order is crucial for PnP crossreferences this on line 569:
rr $iif($did(10).state,-el,-e) %src $+ , $+ $did(30,$did(4).sel) $gettok($did(6),1,32) $+ , $+ $did(30,$did(8).sel)

Font 'Consolas' missing- Apply theme anyways?

Describe the bug
A clear and concise description of what the bug is.

PnP complains it cannot find the font Consolas , but it's installed on my system. (Windows 10)

To Reproduce
Steps to reproduce the behavior:

  1. Go to https://github.com/solbu/Peace-and-Protection/tree/themes and download the zip file;
  2. Extract folders in the \themes directory in %appdata%\mIRC;
  3. Go to Menubar > Pnp > Configure > Load theme...;
  4. Pick dusk by acvxqs;
  5. Click Load theme;
  6. Click OK;

Expected behavior
A clear and concise description of what you expected to happen.

It shouldn't warn about a font missing when the font is definitely installed.

Screenshots
If applicable, add screenshots to help explain your problem.

image

image

Please complete the following information:

  • mIRC version: 7.61
  • PnP version: 4.22.9

Additional context
Add any other context about the problem here.

See: https://forums.mirc.com/ubbthreads.php/topics/255230/font-consolas-exists

Also note that in mIRC v7.44 $font was added!

'Sample message' in Pnp Options > Messages is not showing

Hello,
Please see the attached file it will explain it all, appreciate your help and feedback

Regards

Please complete the following information:

pnp

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Please complete the following information:

  • mIRC version: 7.61
  • PnP version: 4.22.9

Additional context
Add any other context about the problem here.

Problem with users- count > 100%

Describe the bug
A clear and concise description of what the bug is.

  • Everyone is counted as an op one more time than supposed to. Ops are counted twice, while everyone else is counted as ops once (too).
  • Anyone with more than one mode (op/halfop/voice) is counted equally many times. (For example both as op and voice)
  • Being alone with +ohv in a channel will return 1 total user(s), 2 ops, 1 halfop, 1 voice to a /names request.
*** [#underworld] topic- set by X (Thu 8th Jan 2009 05:18p)
*** [#underworld] users- 37 total user(s)
*** [#underworld] users- 39 op(s) 105.41% - 35 other(s) 94.59%

Please complete the following information:

  • mIRC version: 7.61
  • PnP version: 4.22.9

Additional context
Add any other context about the problem here.

Short answer
Scratching the surface of this, it appears that PnP can't handle UHNAMES messages from server properly.

Long answer
UHNAMES is different as the whole nick!user@host is returned in addition to every mode (@%+) the user has on channel instead of just a nickname with the first matching prefix.

PnP seem to count every occurrence of defined prefixes when it receives a NAMES reply from server. This includes every usermodes set, plus the @ between ident and ip/host will increase the op count as well. With traditional NAMES responses, this hasn't been an issue.

It's not as much a bug as it is something PnP just wasn't designed to do. Nevertheless, it is still a problem that can - and should be - addressed with a script fix. With PnP no longer in active development, such fixes depends on being submitted by the community.

Server does not recognize _UPD.TITLE command

Using latest pnp and mirc. I've tried reloading and issue stops if I unload pnp.

The bellow error spams constantly making mirc unusable

*** Server does not recognize _UPD.TITLE command
*** Server does not recognize _UPD.TITLE command

Disable /who on connect

Not able to disable /who on connect and bouncer gets disconnected by server due to excess flood.

Help

Hello, I download latest ver of PnP and I try to load in Latest ver of mIRC v7.46 but it doesn't seems to be working... Please fix this. Thanks

$:minmircver exists in an alias file, so is not read on the on load event when first installing PnP

Describe the bug
A clear and concise description of what the bug is.

$:minmircver exists in an alias file. (It was first used to return 7.61)
When you first install PnP, it cannot know about this value (to check against $version) as it resides outside of first.mrc

To Reproduce
Steps to reproduce the behavior:
Uninstall mirc version 7.61 and install 7.59, then install pnp 4.22.9 (which requires 7.61) and it passes the version check. (it shouldn't)

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Please complete the following information:

  • mIRC version: 7.59
  • PnP version: 4.22.9

Additional context
Add any other context about the problem here.

$:minmircver ought to be removed from aliases.mrc and placed in first.mrc if we want to continue using it.

alias fontfix in themedit.mrc

Line 248:
if ($chat(%num)) { font = $+ $ifmatch %font | inc %num | goto loop4 }
Should be:
if ($chat(%num)) { font $ifmatch %font | inc %num | goto loop4 }

And line 251:
if ($fserv(%num)) { font = $+ $ifmatch %font | inc %num | goto loop5 }
Should be:
if ($fserve(%num)) { font $ifmatch %font | inc %num | goto loop5 }

P.S.: Should not forget THEMEDIT.PTM file!!!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.