
        <html>
        <head>
        <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
        <title>Websh - Welcome</title>
        <script language="JavaScript" src="buttons.js"></script>
        <link href="websh.css" rel="styleSheet" type="text/css">
        <meta name="description" content="Websh - the rapid development environment to build powerful web applications.">
        <META NAME="keywords" CONTENT="websh, Websh, e-commerce, web application, apache, perl,  php, asp, cold fusion">
        </head>
    
        <body marginwidth="0" marginheight="0" topmargin="0" leftmargin="0"
        bgcolor="#ffffff" link="#006699" alink="red" vlink="#006699">
    
        <map name="grafik_navi">
        <area href="mailto:websh-dev@tcl.apache.org" coords="94,2,154,26" shape="rect">
        <area href="./" coords="4,2,64,26" shape="rect">
        <area href="contact.html" coords="184,2,244,26" shape="rect">
        </map>
        <table border="0" cellpadding="0" cellspacing="0" width="100%" height="76">
        <tr valign="top">
    
            <td width="500" bgcolor="#006699"><img height="50" width="300" src="images/grafik_navi_home.gif" alt="" border="0" usemap="#grafik_navi"><img height="50" width="200" src="images/grafik_index.gif" alt=""></td>
        
        <td><img height="50" width="270" src="images/logo.gif" alt="Websh"></td>
	<td width="5000" bgcolor="#000000">&nbsp;</td>
        </tr>
        <tr>
        <td width="500">
        <table border="0" cellpadding="0" cellspacing="0" width="500" height="40">
    
            <tr bgcolor="#006699">
            <td><a href="/websh/product.html"  onmouseover="swap('prod','b_prod_b')"  onmouseout="swap('prod','b_prod_a')"><img height="20"  width="120"  src="/websh/buttons/b_prod_a.gif"  name="prod" border="0" alt="product description"></a></td>
            <td><a href="/websh/docu.html"  onmouseover="swap('docu','b_docu_b')"  onmouseout="swap('docu','b_docu_a')"><img height="20"  width="100"  src="/websh/buttons/b_docu_a.gif"  name="docu" border="0" alt="documentation"></a></td>
            <td width="70"><br></td>
            <td><a href="/websh/resources.html"  onmouseover="swap('ress','b_ress_b')"  onmouseout="swap('ress','b_ress_a')"><img height="20"  width="110"  src="/websh/buttons/b_ress_a.gif"  name="ress" border="0" alt="resources and links"></a></td>
            <td><a href="/websh/download.html"  onmouseover="swap('down','b_down_b')"  onmouseout="swap('down','b_down_a')"><img height="20"  width="100"  src="/websh/buttons/b_down_a.gif"  name="down" border="0" alt="download"></a></td>
            </tr>
            <tr height="20">
            <td width="120" height="20"><img height="20" width="120" src="images/title.gif"></td>
            <td width="100" height="20"><img height="20" width="100" src="images/title.gif"></td>
            <td width="70" height="20"><img height="20" width="70" src="buttons/b_supp_c.gif"></td>
            <td width="110" height="20"><img height="20" width="110" src="images/title.gif"></td>
            <td width="100" height="20"><img height="20" width="100" src="images/title.gif"></td>
            </tr>
        
        </table>
        </td>
        <td><img height="40" width="270" src="images/logo_strich.gif"></td>
        </tr>
        </table>

<div style="padding: 15px; color:#fff; background-color: #069; font-weight: bold; width: 730px; margin: 5px;">
  We are sorry but we discontinued Websh support and development for lack of resources.
  Also the discussion mailing list was closed, so if you're interested in taking up this subproject within the Apache Tcl project to bring it back into life please contact private@tcl.apache.org
</div>
    
    <table border="0" cellpadding="0" cellspacing="0" width="770">
    
        <tr height="30">
        <td width="10" valign="top"></td>
        <td width="150" height="30"></td>
        
                    <td width="610" height="30">
		    <h1>Websh Mailing List</h1>
                    </td>
                
        </tr>
    
    <tr valign="top">
    
	<td width="10"><br></td>
        <td width="150">
        <table border="0" cellpadding="0" cellspacing="0" width="141">
        
        <tr valign="top">
        <td width="10"><img height="11" width="10" src="images/pfeil.gif"></td>
        <td class=nav>
        <a href="/websh/support.html"><b>support</b></a><br>
	
	<br></td></tr>
    
        
        <tr valign="top">
        <td width="10"><img height="11" width="10" src="images/pfeil.gif"></td>
        <td class=nav>
        <a href="/websh/faq.html"><b>faq</b></a><br>
	
	    - <a href="/websh/faq.html#generic">generic questions</a><br>
	
	    - <a href="/websh/faq.html#technical">tech questions</a><br>
	
	<br></td></tr>
      
        <tr valign="top">
        <td width="10"><img height="11" width="10" src="images/pfeil.gif"></td>
        <td class=nav>
        <b>mailing list</b><br>
	
	<br></td></tr>
    
        
        <tr valign="top">
        <td width="10"><img height="11" width="10" src="images/pfeil.gif"></td>
        <td class=nav>
        <a href="http://issues.apache.org/bugzilla/"><b>bug tracking system</b></a><br>
	
	<br></td></tr>
    
        </table>
        </td>
    
    <td width="610">
    If you are interested in the development of Websh, there is a list for the discussion of Websh work-in-progress. Use <a href="mailto:websh-dev@tcl.apache.org">websh-dev@tcl.apache.org</a> to post, <a href="mailto:websh-dev-subscribe@tcl.apache.org">websh-dev-subscribe@tcl.apache.org</a> to subscribe, and <a href="mailto:websh-dev-unsubscribe@tcl.apache.org">websh-dev-unsubscribe@tcl.apache.org</a> to unsubscribe from the list. User questions are typically answered too.<br>
    There is also a web interface to the archived list:<br>
    <a href="http://mail-archives.apache.org/mod_mbox/tcl-websh-dev/">http://mail-archives.apache.org/mod_mbox/tcl-websh-dev/</a>.
    <p>
    There is also an archive of the formerly used websh-user mailing list:<br>
    <a href="http://mail-archives.apache.org/mod_mbox/tcl-websh-user/">http://mail-archives.apache.org/mod_mbox/tcl-websh-user/</a>.
    </td>
    </tr>
    </table>

        <table border="0" cellpadding="0" cellspacing="0" width="770" height="45">
        <tr valign="top">
        <td colspan="2">
        <hr noshade size="1">
        </td>
        </tr>
        <tr valign="top">
        <td width="10"></td>
        <td width="760">
	<a href="product.html">description</a>&nbsp;|&nbsp;<a href="docu.html">documentation</a>&nbsp;|&nbsp;<a href="support.html">support</a>&nbsp;|&nbsp;<a href="resources.html">resources</a>&nbsp;|&nbsp;<a href="download.html">download</a>&nbsp;|&nbsp;<a href="credits.html">credits</a>&nbsp;|&nbsp;<a href="copyright.html">copyright</a>
	</td></tr>
        <tr valign="top">
        <td colspan="2">
        <hr noshade size="1">
        </td>
        </tr>
        <tr valign="top">
        <td width="10"></td>
        <td width="760">
        <span class="klein"><b>&copy; Websh - an <a href="http://tcl.apache.org">Apache Tcl</a> project - part of the <a href="http://www.apache.org/">Apache Software Foundation</a></b></span></td>
        </tr>
        </table>
        </body>
        </html>
    